Misc. enhancements to NodalFloodCount.{C,h}

* Use MooseSharedPointers for the file handles.
* Avoid multiple lg(N) lookups of the file handle.
* User can now select whether the NodalFloodCount threshold check is a
  less-than or greater-than check. By default, it is less-than.
* Delete commented-out line.
* Add/clarify comments.
* Delete unnecessary curly braces.
* Rename variable.
The NodalFloodCount object now computes the sum of grain volumes for
grains which intersect the boundary.

* Get the list of all boundary node ids in NodalFloodCount.C
* Detect intersection with boundary
* Store whether or not a bubble intersects the boundary in the
  BubbleData object.
* Add up all bubble volumes which intersect the boundary.
* Sum up the boundary intersecting grain volumes in parallel.
Adding some results for different cells/pixel numbers.
Adding test computing boundary-intersecting volumes.

Eventually squash all input file/test updates into this commit.

* Use the new use_less_than_threshold_comparison
* Add CSV filename
  Current order of data is:
  timestep, time, volume-of-bubble-1, volume-of-bubble-2, ...
* Use new ImageMesh type
* It appears we do need execute_on='TIMESTEP' for the
  NodalFloodCountAux to show something.
* Add ProcessorIDAux.
Remove old comment.
Make the _total_volume_intersecting_boundary array a class variable.
Scale boundary intersecting volume before printing.
Output the boundary-intersecting volume to the CSV file.
Delete boundary-intersecting volume print statement.