Added some more tests. Removed the database exception stuff. Instead of exceptions, it will just return null or empty collections. It will be up to the user to decide if that's bad.