some more structure rework and readme