Database & Testing update

### In this PR are some structural changes to tests:
 - No database URLs or credentials are stored in the project (source code, config or otherwise)
 - All Database info & creds are retrieved via `CrsProperties`
 - All tests which interact with the database extend `AbstractTestWithDatabaseConnectivity`
 - `AbstractTestWithDatabaseConnectivity` does a refresh of the target database before each test run

### Necessary changes:
 - Add properties which contain DB URL, user & password to filesystem properties file (usually found at /apps/apps-config/conf-registration-api-properties.xml).  See below for example.

### Possible gotchas:
 - Do not EVER put production creds as the unittest properties like this, as a test run could wipe out the production database.  There is no reason to do so.  Production creds should reside only in the application properties.  Actually you could try, but I'll likely make it that the prod DB would ignore connections things other than app servers.

Example properties:
```xml
    <!-- unittest database server connection info -->
    <entry key="unittestDatabaseUrl">jdbc:postgresql://localhost/eventhub_unittest</entry>
    <entry key="unittestDatabaseUsername">[username]</entry>
    <entry key="unittestDatabasePassword">[password]</entry>
```
I'm not quite clear on how the two phases are used together. In the `test-compile` phase of this plugin, the `UnittestDatabaseBuilder` cleans, initializes, and migrates the database. In the `deploy` phase, `DatabaseMigration` will, if the `migrate..` properties are set, simply migrate the data. Can you elaborate on how they are used together?