Changed to a class and added SI unit support for some functions. Introduced tests and installation script.