fix(environment): make the environment consistent within a run

This allows minijasminenode to call itself, and makes the 'jasmineEnv'
configuration option work as it should.
tests(nested): add tests for running minijn from within another test
feat(runner): adds because() clause
refactor(printing): util.print -> console.log
fix(addReporter): When invoking addReporter for your module, the following error is reported: `Cannot call method 'addReporter' of undefined`. This is because addReporter is only an alias for the function definition and not the encapsulating object environment.
chore(logging): fix '.' so that they're all on one line
chore(release): version bump to 0.4.0
refactor(everything): Upgrade to Jasmine 2.0. This introduces many breaking changes.

Upgrade to using Jasmine 2.0, and grab Jasmine from its jasmine-core npm module.

This change breaks custom matchers, reporters, and per test timeouts, as well as possibly
anything looking in to Jasmine internals. See the CHANGELOG.md for more information.
docs(readme): update readme with info about Jasmine 1 versus Jasmine 2
chore(release): version bump and package change for 2.0