Complete generalised replacement for the numeric class hirarchy.

Basically everthing is just adopted by dropping methods that would break deep embeddings.

The RealFrac functions are greatly simplified. In the Haskell provided version
they have types of the form (Integral b => a -> b), which leads to problems
in deep embeddings. So the type has been simplified to (a -> a).
Removed experimental list functions. Updated exported modules.