adding to_f? method and lots of commenting and documentation
udpating to include general number methods, a numerical output of proper type