Implement get_translators in the base class

This patch removes the need for a datasource driver to implement the
method get_translators() as the base class keeps track of the translators
when they are registered.

Several methods in the base class had to become non-classmethods as they
now require use of self._transators which is a member variable which is
populated via register_translator().

This patch also corrects a few random schema bugs in the tests which are now
exposed.

Partially implements blueprint refactor-datasource-driver-framework

Change-Id: I0f8734353f99db09993593f1a1895055834e27e5