Simpler approach.

Simpler approach to calculating the required compensating movements.
Fix bug and add macro for DSL.

Fixed signs in reporting.
Added macro to parse DSL. Just generates data structure,
example usage in comment.
Merge pull request #3 from gmorpheme/master

Simpler approach.