Merge type methods

getTypeOfProperty() and getAdderType() do only a part of getType(), which
works for every type.

Change all usages to the latter.
Update junit
Implement ReflectAsmObjectSupport

Implement alternate object support implementation that only uses reflection
for initial analyses but then switches to reflectasm generated accessor
classes instead for runtime purposes.

We add reflectasm as optional dependency. The user does not need it if he
keeps using the default object support.
write new perf test
update readme