webadmin, userportal: Post-Frontend-Refactor improvements

(a) Frontend changes
--------------------

1. Frontend's singleton instance is now initialized via GIN
   requestStaticInjection applied to Frontend.InstanceHolder
   (static inner class).

   This way, singleton instance initialization is decoupled from
   actual Frontend code and Frontend class no longer needs to be
   bound as eager singleton, however in practice it behaves as
   eager singleton anyway due to GIN requestStaticInjection.

2. Reordered members of Frontend class:
   a. inner type declarations
   b. fields
   c. constructors
   d. methods

3. Following Frontend fields are now final:
   - logger (static)
   - operationManager
   - canDoActionErrorsTranslator
   - vdsmErrorsTranslator

   Always prefer final (instance) fields if possible to reduce
   mutability and make invariants (i.e. field != null) harder
   to break.

4. Added package-private Frontend constructor (for testing
   purposes) that accepts canDoActionErrorsTranslator and
   vdsmErrorsTranslator (ErrorTranslator) directly, modified
   FrontendTest to leverage this constructor.

5. Removed all @Deprecated static methods in Frontend class.

   The only static method is Frontend.getInstance, intended
   to be used by legacy (i.e. UiCommon) code. Modified all
   classes using Frontend's @Deprecated static methods to use
   getInstance instead.

6. Removed redundant getInstance calls in Frontend instance
   methods.

(b) Other changes
-----------------

7. GWTRPCCommunicationProvider.service field is now final.

8. Added some sanity checks to GWTRPCCommunicationProvider
   methods (validate query/action list size):
   - transmitMultipleQueries
   - transmitMultipleActions

9. OperationProcessor.pending field is now final and uses
   wildcards in generic type signature, instead of using
   @SuppressWarnings("rawtypes").

10. To avoid "instanceof VdcActionType" type checks all over
    the place, VdcOperation now has isAction field (final)
    with resolution logic explicitly checking for allowed
    values (VdcActionType, VdcQueryType) and throwing
    IllegalArgumentException on wrong operation type.

    Added VdcOperation.isAction() method, modified classes
    using "instanceof VdcActionType" type checks to use this
    method instead.

11. Removed "source" field from VdcOperation.hashCode
    computation, since this field isn't part of equals.

    This is to comply with general hashCode contract:
    "If two objects are equal according to the equals(Object)
     method, then calling the hashCode method on each of the
     two objects must produce the same integer result."

12. In BaseSystemModule, AppErrors and VdsmErrors bindings
    moved to bindResourceConfiguration because GWT constants
    are considered as resources rather than infra classes.

Change-Id: I87374cead93a5dfbd71aefd93dbc75e4a5a42b8f
Signed-off-by: Vojtech Szocs <vszocs@redhat.com>