major refactor
added some mising files