Migrate to Oslo DB code

 - engine and session handling code is reused
 - integrity errors caused by duplicating entries
   are handled properly
 - the base class for models is mostly reused
   (the only exception is SoftDeleteMixin, which
    requires changes to existing DB schema; this
    will be implemented in BP db-unique-keys)
 - use common exceptions handling code

Blueprint: db-session-cleanup

Change-Id: I7f5eb53daddc57066af9c73caa633b37a2afd9c2
Prevent force delete if the volume is attached

Force deletes were eventually failing on the volume manager layer due to
being in an attached state. This will check that up front to inform the
user that they need to detach first.

Fixes: bug #1164929
Change-Id: I24ade24fd750dc647331ef25b835f45f29c10fd7
Updating HACKING to disallow the use of locals()

Change-Id: I7bf2720bdb0456274dc81a73d91296dff0e3fced
Merge "Updating HACKING to disallow the use of locals()"
Merge "Prevent force delete if the volume is attached"
Imported Translations from Transifex

Change-Id: Ic2b5d57ad16da67e9b152853338a2ef488eaeee7
Merge "Migrate to Oslo DB code"
Merge "Imported Translations from Transifex"
Fix path for pylint Gate

Change-Id: Ibd36a2a0a7ebe572a4dd660a3e35378ae02b8187