ReflectionHelpers: Re-throw unchecked exceptions when invoking reflectively

Brought consistency to the handling of unchecked exceptions/errors across all of the reflective execution helpers (instance, static & constructor). All will now rethrow any unchecked exceptions and wrap checked exceptions in a `RuntimeException`. (Previously only instance methods did this and only for `RuntimeException`s, not `Error`s).

Also took the opportunity to get rid of the raw types in ReflectionHelpers.
We're using assertj in most of the other modules. I'd prefer that new tests use it, but I'm not concerned with converting all the old tests. Maybe someday, but it's not a priority. I agree about the test scope, though.