This package is meant to implement the constraint machinary for the
reflection package. It has been primarly ripped from the Constraint example
of the reflection package with some extension.
The implementation is also influenced by Austin Seipp's
article
on the reflection package