Final Commit

Assignment more or less complete