Major change: Add build covariates capability

This commit contains many changes, but the essential one is that there
is a framework for adding new dimensions of covariates for the HDPS
algortithm.

Changes were also made to the Connection class to better support
debugging and a Makefile was added support general laziness.