If a file gets updated/rescanned we generally don't want to reset the above
values. This commit adds DB_FLAG_NO_ZERO, which marks a field so that
db_file_update() will only update it if the new value is non-zero (i.e. the
caller probably has a "better" value).
Properly handle the tail of the data buffer, accessing the tail as an
unsigned char array instead of a uint32_t array.
Issue spotted by Peter Carmichael.
Move the custom collation and daap_songalbumid() function to a custom SQLite
extension. This will make it possible to use them both from any SQLite client
or frontend.