#8088 - Adding a new layer for Database Configurations.

Adding a new layer for database configuration so that different providers can choose their way for managing database related configurations. For H2, this continues to follow the old way of getting the configuration from SystemEnvironment.
#8088 - Moving DatabaseConfiguration back to base and making it an abstract class instead of interface.
Merge branch 'master' into dbconns
#8088 - Fixing failing tests

Database port for H2 was fetched wrongly. Using systemEnvironment#getDatabaseSeverPort for getting the port value.
Merge pull request #185 from sachinsudheendra/dbconns

Adding a layer for Database Connection Configurations