Lots of stuff

completed