Fixes bug in detecting empty options (see issue #132 on github)

In issue #132, a bug was introduced in that (options === {}) was never matching, and causing us to call the superclass constructor with {} instead of null.  This, in turn, nuked the default stream options.

This pull request tests for a symptom of the above (whether or not 'a' is in the file mode) and fixes the check for empty options in the sub-class