Return null with no matches and nix "this month" and "this year."

This is a bit of a subjective patch: It changes the behavior so that unmatched entries return null.

Previously, there was code that looked to throw an error in this situation, though the code wasn't constructed right and would never throw. When implemented properly, the code errors on "this year" and "this month" as they both fulfill the "error" requirement of Date.js output matching "now."

I think it would be good if we always expect something consistent out of date.js — which I believe is a specific time & date based off the input. ie, the library should support:

* "Next tuesday," or "tomorrow" (guessing the time based off of now)
* Tomorrow at 3pm
* Now (this should probably be added...)
* etc.

But it should _not_ support:
* Every 5 minutes (iterative time increments)
* For the next 3 months (span of time)
* "This month" and "this year" (vague)

Just a thought, discussion welcome :)