restructured library concept to make it more OOP