core: Consolidate duplicate exception handling

This patch removes duplicate blocks of exception handling.

The pattern this patch addresses is the following:

try {
    someFunction();
} catch (SomeException e) {
    handleException(e);
} catch (SomeBaseException e) {
    handleException(e);
}

If SomeException inherits from SomeBaseException, this construct is
completely redundant (regardless of Java version), and should be
simplified to just handle SomeBaseException:

try {
    someFunction();
} catch (SomeBaseException e) {
    handleException(e);
}

If SomeException does not inherit from SomeBaseException, this
construct is still difficult to read, and could be simplified using
Java 7 syntax:

try {
    someFunction();
} catch (SomeBaseException | SomeException e) {
    handleException(e);
}

Change-Id: I37e468c40a9542e833b3e342fab023a7cde8ffe6
Signed-off-by: Allon Mureinik <amureini@redhat.com>
core: Remove ReflectionUtils.getSizeAnnotation

This method is not used anywhere in the codebase, and can safely be
removed.

Change-Id: I2b5d1bd7ca6fc9fe973fefcd3037e95880bda754
Signed-off-by: Allon Mureinik <amureini@redhat.com>