Number: Create .numberFormatter()

- Create format generator method called `.numberFormatter()`;
- Functional Tests: Update module titles according to method names;
- Number Format: Rename attributes to options;

Fixes #295
Closes #299
Ref #294
Number: Create .parseFormatter()

- Create parse generator method called `.numberParser()`;

Fixes #296
Closes #305
Ref #294
Date: Create .dateFormatter()

- Create format generator method called `.dateFormatter()`;
- Test: Use consistent module names;
- Unicode issue http://unicode.org/cldr/trac/ticket/6788 has been fixed (it
  confirmed QQQQQ or qqqqq means narrow and that we implemented it the right
  way). So, the internal comment referring to it has been removed;

Fixes #297
Closes #303
Ref #294
Date: Create .dateParser()

- Create parse generator method called `.dateParser`;

Fixes #298
Closes #312
Ref #294
Date Parse: Simplify patterns into pattern

This change simplifies current parser and reduce its pattern-guessing
functionality.

- No default [patterns] anymore;
- No patterns iteration;

Ref #298