Initial commit of reconstruction variance criteria
which is an addition for GRIC-based keyframe selection.

Uses paper Keyframe Selection for Camera Motion and Structure
Estimation from Multiple Views,
ftp://ftp.tnt.uni-hannover.de/pub/papers/2004/ECCV2004-TTHBAW.pdf
as a basis.

Currently implemented camera positions reconstructions,
bundle positions estimation and bundle adjustment step.

Covariance matrix is estimating using generalized inverse
with 7 (by the number of gauge freedoms) zeroed eigen values
of J^T * J.

Additional changes:
- Added utility function FundamentalToEssential to extract
  E from F matrix, used by both final reconstruction pipeline
  and reconstruction variance code.

- Refactored bundler a bit, so now it's possible to return
  different evaluation data, such as number of cameras and
  points being minimized and also jacobian.

  Jacobian currently contains only camera and points columns,
  no intrinsics there yet. It is also currently converting to
  an Eigen dense matrix. A bit weak, but speed is nice for
  tests.

  Columns in jacobian are ordered in the following way:
  first columns are cameras (3 cols for rotation and 3 cols
  for translation), then goes 3D point columns.

- Switched F and H refining to normalized space. Apparently,
  refining F in pixel space squeezes it a lot making it wrong.

- EuclideanIntersect will not add point to reconstruction if
  it happened to be behind the camera.

- Cleaned style a bit.