Lots of changes. Everything working but not complete