Finished aside from making it as pretty as I want