Log warnings when using non-existent options

Fixes #343 

This was fun! Some highlights:

  - I discovered a previously-undocumented option, `gridLinePattern`.
  - I removed a few references to non-existent options from auto_tests.
  - I switched auto_tests to use new-style options where they weren't explicitly testing old-style options.
  - I switched all the tests to use new-style options.
  - I discovered that `isPixelChangingOptionList` didn't know about new-style per-axis and per-series options.

I fixed this last item, but this revealed that there were some pixel-changing options which were marked as not being pixel-changing. This is a bit scary!
Believe it or not, this is 100% in conformance with the Google style guide and I wrote code like this all the time there.

Citation: the JS style guide [defers][1] to the C++ style guide. The C++ style guide [states][2]:

> Short conditional statements may be written on one line if this enhances readability. You may use this only when the line is brief and the statement does not use the else clause.
> 
> ```
> if (x == kFoo) return new Foo();
> if (x == kBar) return new Bar();
> ```

[1]: https://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml?showone=Code_formatting#Code_formatting
[2]: https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Conditionals