Xraylib wrap

More work is done to wrap xraylib, such as 

a. make class public
b. more overloading operation, eq, lt, gt, ...
c. more doc
d. sub class

we need to discuss the location of element module.
This also isn't right.  They are dict-like, but they are really `XRayLibWrap` objects....