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.
I will remove this. It does generate twice.