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.
I can understand the desire to remove the dependencies - and I've been bitten by scalacheck binary compat issues in particular (between Spire laws and Specs2), but it is a fairly large undertaking to replace it, at least for this PR.

If we did want to drop the deps, I think I'd prefer a strategy where perhaps we abstract out the "Arbitrary" style implicits in `algebra-laws`, and have something like `algebra-laws-scalacheck` which implements the "laws" with ScalaCheck. And perhaps from there we can look at then creating a dependency-less version.