Added two new input files to test against. Tried running the algorithm
on 15kHz 0xDE and it worked for all bytes. Tried the algorithm on the
15kHz 0xDEADBEEF and it worked for the all but the last three bits on
the second and third message. At these points the percent error from the
edge gave a false reading. I will attempt to fix this issue by:
    1.) Marking the sample where the last edge occurs, call it lastEdge.
    2.) Comparing the instantanious curState with the
        averagePeriodState.
    3.) If they do not match then I will adjust the starting sample for
        the next reading by the difference betweeen the curState and the
        lastEdge.
This should help to eliminate the percent error accumulation.
Fixed percent error by adjust the starting point of the window to the
last know edge. This allows for the decoding of any length input of 25Hz
Manchester (IEEE) bits with 15kHz high states and 0kHz low state.

Added new test file
"HeadsetSensor_in_25Hz_15kHzOne_0xCAFEBABEDEADBEEFFACC310400104713_44kSR_SE_i5s.txt"
Merge pull request #4 from vlantaca/multi_byte_msgs

Multi byte msgs