Make the Resource Core (DataProvider) interfaces a GWT module. Any code used in client-side GWT modules have to be part of a GWT module and translatable to javascript.
These requirements are the primary reason why the DTO pattern exists in the codebase because the non-DTO objects are not in a client-side GWT module and/or not translatable to javascript. The UserDTO is one exception, since it is intended to never carry the user's password.
Implementing this change will reduce duplication and unify the functionality, syntax, and semantics of the application.
This is a necessary step to implement [#4] (Trac #412).
Trac #428.
Diff: