Remove db locks and use random db names for tests

Removed database locks against the database openstack_citest and
implemented random name generation for new databases created just
for persistence testing.
Once the locks were removed, using 'template1' as the initial db
for postgres connections was problematic, because postgres refuses
to create databases when there are multiple connections to
'template1'.  Switched to using 'postgres' as an initial db to use.
Changed _reset_database to _init_db since we are always working
with a brand new database, and removed the 'drop database' before
a 'create database.
Added a _remove_db method to remove the database once testing was
finished.

Change-Id: Iaf1c101df9c268da48db7432bcbc0467f6486bcd
Closes-Bug: 1327469
Merge "Remove db locks and use random db names for tests"