Add files for assignment 5

Note that most of these files come from CSCIx229.h the library as
provided in the CSCI5229 course of Fall 2013 @ CU Boulder.