pull request feedback.  Removing JsonSerde since its just used to
get its underlying Gson, so just binding Gson directly. Refactored
a bit so that database queries are performed by a separated
DBQueryExecutor class that gets its gson injected so that we are
not passing gson around in every method call.

Also adding version to the upgrade tables script.