Coherent behavior for all collection slice and indexing operations.

o All relevant operations - head, tail, last as well as bracket-syntax indexing
   ([x] and [x..y]) now return null for out-of-bounds operations.
Cleanup of internal classes that should not be publicly documented.

o Moves all publicly documented internal classes added in 2.0 to internal packages.
o Deprecates all publicly documented internal classes added before 2.0.
Fix bug in TxLog handling of null-bytes in log files
Refactor and clean up TxLog

There is still more that can be done, but hopefully it is now a little more readable and
in line with our house style. The parsing could for instance be split out into its own
class.
Merge pull request #1410 from systay/collection-out-of-counds

Coherent behavior for all collection slice and indexing operations.
Merge pull request #1416 from jakewins/deprecate-incorrect-packaged-things

Cleanup of internal classes that should not be publicly documented.
Organise imports.
Merge pull request #1427 from chrisvest/fix-tm-log-duplicates

Fix tm log duplicates