Tests and source refactoring for scale distortion

These changes encompass major changes to ensure that Elroi graph data
appears under any graph decoration (error-messages/point-flags/
x2-axis-labels).  This is a portion of the codebase that has generated a
significant number of bugs.  As such, on top of a reevalutation of all
applicable logic, dozens of additional tests are included.

elroi.css:
- Provided warning to remind users to not modify elroi.css directly as
  revving will overwrite their changes.
- Added comment to '.elroi .paper' alerting users to the fact that the
  height and width properties must be overriden to change the graph
  size.
- Changed to 4 space indentation.

init.js:
- Added getPointFlags method which will return an array containing all
  of the point flags across all series.  This removes most of the logic
  from hasPointFlags which now simply checks the length of the result
  of getPointFlags.  getPointFlags is also used by
  pixelsNeededForPointFlags.
- Added aggressive parameter checking into minValues and maxValues to
  verify bad data isn't being fed in.  These exceptions are documented
  in the header block for each respective method.
- Cleaned up all pixelsNeededFor_______ methods.
- Rewrote pixelsNeededForPointFlags to make its result more accurate.
  Previously the method was calculating the number of pixels of height
  needed by injecting a single faux point flag into the DOM.  This was
  flawed for a number of reasons.  First is that the injected flag was
  using CSS classes that actual point flags don't include.
  Additionally, for the text of the point flag it was using a, constant,
  one-line message.  The result of this is that the result of this
  method was a constant (roughly the line-height of the text on the
  page) if the graph had point flags.  It did not take into account the
  style or the text of any actual point flags!

  The method had been changed so that it now transparently adds each
  individual point flag provided, returning the largest height.  This
  change ensures that point flags that have multiple lines of text or
  have custom classes have their heights correctly calculated.

- Provided more consistent naming around variables, particularly those
  with 'series' in their name.  As 'series' is both singular and plural,
  and Elroi deals with series of series, careful naming is required or
  the code can be very difficult to follow.
- Shifted from using .each to .map functions where appropriate to
  provide more succinct code.
- Provided much more thorough, JSDoc style comments to all touched
  methods.

stackedBar.js
- Fixed broken pointFlag logic so that standard bar graphs can now have
  flags.  Prior to this change point flags were only working for stacked
  bar graphs.

test/elroi.js
- Provided thorough testing for overwhelming majority of methods affected
  by this change set.
- Provided helper methods (e.g. createElroiGraphContainer,
  getMockElroiFnHelpers) to reduce verbosity of current tests.
- Started section for tests that exhibit strange behavior for edge data
  cases; that should be visually verified before each commitment to
  Elroi.
- Changed all tests from using double to single quotes.  Double quotes
  should be reserved for HTML/JSON.