Fixed the unit tests
Added a lot more unit tests

Now properly handle going across the start of lines
Fixed a cross line issue and added tests