Obtain data source via jndi

* Configuration now expects data source from the application container.
* H2 used for testing.
Obtain properties via JNDI

* Encryption key and mq properties now obtained via JNDI.
Refactored drop daos

* DropDao.populateMetadata moved to ContextDrop.populateMetadata and
AbstractContextDrop  created to abstract populateMetadata for the
RiverDao and BucketDao daos. The two daos now simply need to provide
the specific queries to use.
* getDrops in both RiverDao and BucketDao refactored to use a helper
class for Filter parameters
Removed UnauthorizedException

App cannot return status 401 since auth is handled entirely by Spring
Security.
Added Forms controller.

* End points stubbed and to be implemented.
Channel Model: java.util.Date not Java.sql.Timestamp
createForm, updateForm and deleteForm implemented.
createFormField, updateFormField and deleteFormField implemented

* Added a custom List to String dozer converted
* As a result, FormField tests in FormServiceTest are integration tests
to use the above converter.
RiverControllerTest#createRiver validate id exists instead of value

* Exact value not guaranteed depending on persistence store.
getForm implemented.
PostDrops: Added index to error fields name

E.g. A and error field "[56].title" means the drop at position 56 in
the provided list, has a problem with the title.
createForm: Allow creation of fields  simultaneously

* Added a fields property to CreateFormFieldsDTO.
* JpaFormDao#create overriden to persist each form field.
GetAccountDTO: Replace Bucket and River inner classes

Replaced the inner classes with the corresponding GetxxxDTO.
getAccount: Added forms array to GetAccountDTO

* Treated like any other asset.
Component base scanning for Repository and Service classes
DataAccesException translation.

* Added
org.springframework.dao.annotation.PersistenceExceptionTranslationPostPr
ocessor to the root context.
Handle duplicate form name.

* Throw a BadRequestException when DataIntegrityViolationException
encountered during formDao#create
Restore droplets.droplet_content to text field.

* Best alternative in a sql database.
Replace ListToStringConverter with a general purpose ObjectToStringConverter
Restore AbstractJpaDaoTest

Made FormServiceTest a unit test again since only the mapper requires
complex construction so no need for an AbstractIntegrationTest.