Add basic spire.math.Info[A] implementation.

This commit adds an Info type class that gives us some basic
information about a scalar type.

Currently this type class doesn't support exotic types like
complex, interval, jet, polynomial, etc. It's really just
about trying to handle range/precision issues in a general way.