solve alloy module

I made a pull request for this a long time ago and didn't include the right changes. Here they are. I'm going to go ahead and merge this. I made this PR just so you can see it.

Fixes #1.

Basic integration with the Alloy API. Checks that an formula is solvable or not.

Will build upon this to allow user to define custom instances and run against the model. The custom instances will be defined in the same textual language as Alloy uses to describe instances in its visualizer. This text will be parsed into additional Alloy statements that constrain the formula to use the particular instance.

At least, this is just an idea.