Add subprojects; first pass at adding laws and tests.

This commit creates three sub-projects:

 - core: builds algebra.jar; contains type classes (and a few types)
 - std:  builds algebra-std.jar; contains sample instances
 - laws: builds algebra-laws.jar; contains laws and conformance tests

It also ports over the basic laws from Spire for:

 - signed
 - eq/order
 - groups
 - rings

Finally, it adds a very simple standard algebra instance for Int, and
runs the relevant laws tests on it.
Is the purpose of this class solely to test the field laws? If so, I'd suggest we either move it to the std test package or create a new algebra-example package for things like this that our own tests can depend on.