Fix memory leak (missing typelib_TypeDescription_release)

...by radically simplifying TypeToIdlClass().  It is unclear to me why this was
so complicated.  The only mildly plausible reaons would be that the old code
was careful to return null instead of throwing an exception for an unknown type,
but the TypeToIdlClass-call-sites either strongly expect a non-null return value
(by dereferencing it without any further checking) or use OSL_ASSERT or similar
to verify it.  So lets hope this is good.

Change-Id: I3e24eb6117e84c9d33f4c5f0e2fa88da4c4f2c30
Fix memory leak

...by using css::uno::Type instead of a naked typelib_TypeDescription.

Change-Id: I387692265e9e032cb5ed6519739ebb3307db6f28
Avoid undefined signed integer overflow

Change-Id: I3f32ea88dbb34a05baccba49c15b6691d923753e
Avoid undefined computation of unaligned pointers to multi-byte objects

Change-Id: Iafca1288e044ab4650b004439027c134e159b45f