Code refactor

I refactored all the non-library source code into a, I think, more legible state. I also determined the files that changed from vanilla OpenSURF to our version and I've listed them here:
	- ipoint.h and ipoint.cpp added support for MatchesVec
	- surf.h, surf.cpp, surflib.h 
		- changes to support contour functions
	- fasthessian.h, fasthessian.cpp
		- new constructor and supporting functions
	- ContourMat.h, ContourMat.cpp
		- added this class to store a contour matrix, vector of booleans
	- fasthessian needed an ifdef clause for responselayer