restructuring for library
styling work on lib interace