Removed unnessesary re module dependency
Added documentation to every function
Added documentation for every function
Documented RepeatTimer class
Documented all loggint functions
Fix problem with estTime()

As soon as the port is opened, sync packets start to accumulate in the rx
buffer, however due to some processing thats done when the port opens,
parsing these packets may be delayed. eOn my machine by about 3 seconds.
estTime used the system time that the first sync packet was parsed as a
reference, however that packet is already a few seconds old!

Due to this buffering effect, several sync packets, spanning several
seconds of device-time, are recieved within a very short time on the PC
end, causing estTime() to return an incorrect value. estTime now uses the
time that the port was opened as a reference. estTime() should now be
~+-.5 seconds off, not including the innacuracies of the system timer.
Added user manual