Tidied, removed redundant fields; Enumerator is now public so it can be fed any seekable stream.
Documented almost ALL the things