Eliminated warnings caused by raw types and unchecked coercions.

Most warnings could be solved by adding a few type parameters, especially
<?>. But a few could only be fixed by adding @Suppress warnings, usually
because an interface was implemented that itself has type problems.