Eliminate scanning for accept criteria by reversed annotation (#8641)
The new annotation is called AcceptCriterion and is on the client side
class, pointing to the server side implementation.
This change also addresses #5956 (avoid loading classes when scanning -
no more scanning for criteria) and #6750 (logging).
Moved each component to its own package on client side
Class loaders have problems with referring to static inner classes (e.g.
state classes) when they cannot load the declaring class. To deal with
this the components have been moved to their own packages and state/rpc
classes will be defined in their own Java files.