SPARK-4297 [BUILD] Build warning fixes omnibus

There are a number of warnings generated in a normal, successful build right now. They're mostly Java unchecked cast warnings, which can be suppressed. But there's a grab bag of other Scala language warnings and so on that can all be easily fixed. The forthcoming PR fixes about 90% of the build warnings I see now.
It's the general "uses unchecked or unsafe operations" warning: https://gist.github.com/srowen/ddf5e606ba9cb888999f#file-gistfile1-txt-L36
`Class` definitely carries a generic type.