Initial backend commit

Everyone should recognize the structure from lab 8.