Fixed up the isLanding function to calculate if the Mobile's vector and surface are intersecting. This involved making a Point class and simplifying the Surface construction.
finished 'isLanding' but now we need a way to reposition/redirect the Mobile when he is actually landing
Moved the linear algebra classes into a separate LineModule and moved the 'isLanding' logic into the Adjuster itself since we needed access to the x,y-intercept variables
renamed 'stop' to 'onCollision' since it takes care of both stopping and redirecting.
changed the x and y directions for when Mobile is moving into a Surface according to issue #9
fixed a small bug in isLanding and also made the vector logic capable of handling an undefined slope in the Mobile's vector
wrote better tests for isLanding
Refactored the 'onCollision' vector logic and pulled it out into a separate protected inner class 'Intersection'. 'isLanding' is now an attribute in Intersection.
moved LineModule into game.util and created game.util.FractionModule
(#13) added a game.util package and created a basic FractionModule that does some fun lazy recursive logic
added multiplication, addition, and subtraction
refactored Fraction and did away with the whole 'nested fractions' thing. It was a fun exercise but this method uses half the lines
Added a 'pow' function for Fractions. sqrt() is going to be harder
toying with the idea of a RadicalModule for delayed evaluation of square-roots.
moved Line, Fraction, and Radical Modules to a util.math package
condenses the Fraction and Radical Modules into one ExpressionModule. Modified specs and imports accordingly.
wrote a Composed Expression that represents adding Sqrt and other numbers.
changes the way we detect an intersection and removes the need for hypotenuse
Removes the overloaded, type specific methods. This still needs to be thoroughly tested.
reformatted the file and renamed back to ExpressionModule