Merged class Drop into DropController

closes #112.

* Moved functions from Drop.java into DropController.java
* Deleted Drop.java
* Renamed DropTest.java to DropControllerTest.java
A DropController instance must be a generic type for two reasons:
* A generic type would imply that it can only be used for one type. But there's no reason why DropController cannot send any ModelObject
* The controller can receive objects too. It can't know which type these messages are. Therefore a generic type wouldn't work here.