Starting 'localBranch' branch.
readFileContents() uses try-with-resources now.
Commented empty blocks.
Commented out unused private RAD and DEG.
Fixed some warnings.
Added @Override tags.
Fixed warnings, formatted a bit.
Used Integer.valueOf() to fix a warning. Removed redundant generic type declarations.
Replaced new Integer() with Integer.valueOf().
Warning fixes: Removed redundant parameter types everywhere.
Removed unused import.
Added @Deprecated annotation.
Renamed several variables to avoid object field shadowing.
Added a few @SafeVarargs annotations.
Fixed 'heap pollution' warnings.  Some methods needed to be final to add @SafeVarargs annotation.
Removed a few statics that weren't used nor visible beyond the class. Added 4 exact cardinal points according to original Java-Gaming forum thread.
Hopefully replaced Bag implementation with a better one.
Now the JavaDoc uses the value tag for MAXIMUM_CAPACITY. Not sure if it can be read properly from outside.
Made size field modifications more visible. Fixed set( int index, T item) method, it was always changing the size field before and in some cases even missing objects (ie, there are 10 items, set in position 5, size would get changed to 6 in previous implementation, loosing items in the middle).
Close branch localBranch