profiles: allow profiles in XDG_DATA_DIRS

If we can't find a given profile in /etc then look for it in the
XDG_DATA_DIRS.
engine: add support for 'file-db'

This is a new database type that is simply an absolute path to a gvdb
anywhere on the filesystem.  Change notification is not supported.

This is intended to be used by things like gdm that wish to install
databases (somewhere in /usr) as part of the software.
tests: test the new file-db engine source