More todo items
Check almost every memory allocation and return MMDB_OUT_OF_MEMORY if it fails

This also involved reworking the code so that the function to free an MMDB_s
struct so that it will just do the right even if initialization or reading the
metadata failed part of the way through.