Finished! Just some bugs now