Added strict parsing

I've wanted this for a long time -- strict parsing. It builds one regex of all the tokens and matches it against the whole string. Then it matches the match groups against the tokens.

I guess we can add stricter regexes for the tokens (for example MM will match 2 digits only, instead of one digit).