adding upgrade code for upgrading from 0.9.7 to 0.9.8.
Will keep a set of codecs for serializing/deserializing current
objects, and a separate set for converting between versions.
Switched to use guice injection to create the codec everywhere.
update changelog with upgrade script.
Merge remote-tracking branch 'origin/develop' into feature/db-migration

Conflicts:
	server/src/main/java/com/continuuity/loom/http/handler/LoomClusterHandler.java
	server/src/main/java/com/continuuity/loom/scheduler/CallbackScheduler.java
	server/src/main/java/com/continuuity/loom/scheduler/ClusterScheduler.java
	server/src/main/java/com/continuuity/loom/scheduler/JobScheduler.java
	server/src/main/java/com/continuuity/loom/scheduler/SolverScheduler.java
	server/src/main/java/com/continuuity/loom/scheduler/task/ClusterService.java
	server/src/main/java/com/continuuity/loom/scheduler/task/TaskService.java
	server/src/main/java/com/continuuity/loom/store/cluster/SQLClusterStoreService.java
	server/src/test/java/com/continuuity/loom/http/LoomClusterHandlerTest.java
	server/src/test/java/com/continuuity/loom/scheduler/ClusterCleanupTest.java
	server/src/test/java/com/continuuity/loom/scheduler/SchedulerTest.java
	server/src/test/java/com/continuuity/loom/scheduler/SolverSchedulerTest.java
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.
adding renamed file.
stop service before exiting.
Merge pull request #258 from continuuity/feature/db-migration

adding upgrade code for upgrading from 0.9.7 to 0.9.8.