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>
```
That's a very important distinction.  We don't want unittests running against the prod or stage database, nor do we want prod or stage data going into the unittest database where it will be easily and often wiped out.