Merge pull request #24 from niode/nathan

Moved constraints to Constraints class, added State, Solver.
Merge pull request #25 from niode/nathan

Added Solver.
Merge pull request #26 from niode/nathan

Added State