Work to rationalize the situation with implicits.

We're getting to the point where I worry that we may be collapsing
under the weight of our implicits. Unfortunately, we need to use
these to make the built-in types and the user-defined types have
similar methods and semantics. But I fear that the current strategy
is leading to "full recompiles on any change" as well as increasingly
confusing interactions between moving parts.

That said, things are mostly working in this state. So we can continue
to patch problems as they come for awhile yet.
rename global to GlobalRng
Bump version to 0.4.0-M1
Separate standard Scala type class instances out.

This moves most of the type class instances for Scala's standard types
outside of the type class companion objects. They now reside in Scalaz
style objects (eg. spire.algebra.std.int._). However, spire.implicits
currently imports all of the instances as well, which isn't idea.
Move Rational instances to companion object.

This moves Rational's type class instances to Rational's companion
object, rather than on type class' companion object. This makes for much
better implicit resolution, since inheritance is handled in a sane way.

This will be done for all our number types, but this is the first
proof-of-concept.
Move more instances out to companion objects.
Move type instances for unsigned types to math.
Move Rig[Interval] to math. Clean-up imports.

The clean-up is just to get imports from spire.math a little more
explicit. Essentially, they boil down to Number, ConvertableFrom, and
ConvertableTo.
Add fromDouble to Field. Small ops reorg.

This adds fromDouble to field. There is a default implementation that
uses Field ops, though it should be overidden.

This also moves the ops classes out to their own file, to minimize other
files' interactions with macros.
Add fromDouble method to some Field instances.
Move std instances to own sub-package.

This moves the standard type class instances to their own subpackage,
spire.std. This also adds a new importable object, spire.ops, that will
just import the operator implicits. Also, spire.implicits._ will not
only import the operator implicits, but also all of the stnadard
instances.
Fix up remaining compile/test issues in refactor.
Merge remote-tracking branch 'tixxit/topic/implicit-reorg' into 2.10.0
Move Trig to Algebra. Update README.
Merge remote-tracking branch 'tixxit/topic/implicit-reorg' into 2.10.0