Revert "Remove public method declaration in interfaces"

This reverts commit 994fa6fc551485244986f5ebd3df2ae099c36209.
Merge pull request #206 from trevorbernard/master

Revert "Remove public method declaration in interfaces"
Change Chunk<T> to be a static inner class

Chunk<T> doesn't access any of the enclosing instance (methods, state).
Fix raw type parameterized warnings
Change constructor and method declarations to be public

Remove final declaration on methods since there are no subclasses