Add missing newline in error message
db: Fixup memory to mirror gdbm changes
api: Update module init to return a bool
whitespace cleanup
libbuxton: Make priority an int not a string
libbuxton: Cleanup backends correctly

Before we were calling destroy_backend on the same backend multiple
times. Now just iterate through a hash with unique backends to do the
destroy calls.
libbuxton: Add function to return data based on priority

While it is still useful especially for testing to get data based on
key and layer, the main purpose of buxton's layers is to get the
correct value based on priority.

So iterate through all the layers to find which ones contain the key
being sought and keep track of which layer that had the key, had the
highest priority and return that one's data.