Clean up Eigen3 Header Warnings
Clean up compiler warnings emitted from Eigen3 headers. This cleans up the build output a good bit, and allows developers to focus on warnings only emitted within the project source. Also added .gitignore with initial entry of build/ directory. If the project is built inside of build/ all build artifacts are ignored and not accidentally committed.