Numeric doesn't extend Field anymore.

Aside from some other minor fixes/refactors, this also makes Numeric
only extend Rig now, rather than Field. Note that / still exists with
Numeric, but it comes from inheriting just MultiplicativeGroup, rather
than Field.
Make Numeric[A] extend Ring[A] instead of Rig[A].

This change enables some useful implicits involving literals. Arguably
those implicits should not depend on Ring[A] but for now this is the
simplest way forward.