renamed .logfile to .filehandle in LogFile.
added a log file that has a roll over from Dec 30 to Jan 2.
added test for util/logfile.py with first test.
added test for .start and .end properties.
added __iter__ and __len__ methods. iteration over a LogFile will yield a LogLine object per line in the file.

also fixed a bug with the number of lines being off by one.
refactored LogLine to LogEvent (because of upcoming system.profile input source).
Merge branch 'bugfix-153-year-offset' into feature-164-inputlayer

Conflicts:
	mtools/util/logfile.py
completed refactoring of LogLine -> LogEvent, import from util.logevent.
added profile_collection which is the equivalent input source class to LogFile for system.profile
logevent can now parse both system.profile collection documents and strings from log files.
added custom argparse action to either return LogFile object or ProfileCollection object. Now need to fix everywhere in the code to walk over logfile directly and not assume filehandle.
in the middle of adapting all tools to new input sources.
updated mlogfilter and mloginfo to work with new input sources.
made mlogvis and mplotqueries compatible with new input sources.
fixed stdin parsing for input sources.
removed read_profile, this is now included in LogEvent.
mention system.profile input source in CHANGES.md