

(cf also the presentation of the mathematical libraries on the doc/mathlib
directory)

* Note that every Ring and every Field MUST provide a mechanism to construct a
new element from a gmp integer, mpz_class, one !

* Note that the common idea which says B is an A when B inherits from A is not a
good idea when applied to mathematical objects : a Field is obviously a Ring
in a mathematical point of view, but a field is a Ring with much more
properties. That is, a Ring is a Field with more possibilities ! 
So remembering that derivated classes are an EXTENSION of their parents
classes, reverse the common mathematical sense ! 
* Be careful : we can state that a ring may exist without
any reference to its elements (even if they follow some rules that, in maths,
define what is a ring from what is not). But obviously no ring element can live
without knowing to which ring it belongs... So any ring element may have a link
to some Ring class, but no Ring may have any reference to a ring element ! 
* Note on the near implementation of Elliptic Curves : the methods which allow
to find a random point on the curve may be specialised for known types, and let
unimplemented otherwise.