Updated project to compile with the latest rust version, cargo set up to
automate building + testing, rearranged layout of source files