Multiple testing fixes

* Changes NotificationHandler base to be a object and the tests to inherit it
  like a mixin, test_invalid method fails if not due to duplicate test id.
* Changes backend tests to use scenarios and special NSD4 tests puts the setUp
  logic into a fixture which is loaded for the NSD4 backend tests.
* Remove any get_*_service call into start_service(name) which uses a fixture
  ServiceFixture that automatically cleans up the service upon teardown (no
  more sprinkling tearDowns all over the tests to stop a service).
* Use fixture for database. Removes storage.setup_schema and teardown_schema.
* Fix cleanup of notifications.
* Use fixture for Policy instead of in teardown().

bug #1256728

Change-Id: I72a53eed9e81d3f014015aa443582de21a4e66ee