Added everything, a lot of it working