Compiles now and started to add in the pieces