Fixed up generic types and javadoc, added array-collection optimization methods

Signed-off-by: Irmo van den Berge <bergerkiller@gmail.com>