test: add test for instanceof ctor guard
Fix ctor instanceof guard

The ! operator is higher priority than the instanceof operator, so the
expression (! this instanceof X) is the same as ((!this) instanceof X),
which will always evaluate to false.
test: ensure parent type guard is working
Fix parent instanceof guard

The ! operator is higher priority than the instanceof operator, so the
expression (! this instanceof X) is the same as ((!this) instanceof X),
which will always evaluate to false.
test: make throw tests validate was is thrown

When the second argument to nodeunit's assert.throws() is a string it
is used as the failure message, not for exception message matching.

To assert the contents of the exception's message a RegExp must be
used.
Merge pull request #159 from strongloop-forks/constructor-fix

Fix bad constructor guard