Just about done

It just needs integration with the main game file.