DropMessage refactoring: Don't use generic-parametered DropMessages

but ModelObjects as `data` field that shall be casted to specific target types afterwards.

Perhaps a reasonable way to get rid of the template-bracket-frenzy that's spread all over the code.
Please review and critizize - I haven't spent so much time in semantically walking through all the changes.

Resolves #199 once merged.
With generics we can do that at compile time instead of runtime. So I find that useful here.

Anyway, using Class without a generic type generates a warning. I want to get rid of warnings in the long run. So even if we get rid of those generics, we should at least use a generic-wildcard (```Class<?>```).