Add a module for simple reprojection
Add calibration controls
Add calibration data state
Add most of the calibration data capture logic

This code directly mirrors that of the RC3D module's capture code. I've
yet to do loading or saving -- that's next.
Implement loading, clearing, and saving calibration directory files

This again mirrors the RC3D structured light directory file structure.
Add a calibration data structure
Implement reading and writing calibration data
Make calibration images intensity use 3 characters in the filename
Add triangulation, quadtree, and projector number to calib data
Implement triangulation method
Add print statements for the triangulation routine
Add controls for appearance editing
Implement generating compensation images

To get this to work I had to add another member to the CalibData
struct, namely the projected intensity of each calibration image.
Add print statements to image generation method
Replace CalibData's SceneQuadTree with an unordered_map

For this I had to create a hash function for a VM2Point so that I
can map projector points to camera points. The code doesn't yet
compile because I have to change the way things are done. As of now
it all still relies on the quad tree.
Partially change implementation to use std::unordered_map

I realize now that using a std::map might be more efficient since I'll
be iterating through the mapped points more than looking up individuals.
Change from std::unordered_map to std::map

I also had to add my own less-than operator, since the overloaded
operator for VM2Point was not suitable for comparing two pixels in
an image.
Change compensation image generation method to use the map
Check for NaNs when triangulating
Lookup average intensity of area surrounding camera pixels