Updated all the things

Added most functionality to the project, with the help of @vblinden