BIG refactory, headers renamed, reduced the number of solibs, still have to sync class names with header names