Finished Key Generator

Still needs to be commented but is fully functional.