[DateTime] Added a PatternParserBuilder

This was extracted from PatternParser, to ensure that once a parser is built, it cannot be modified anymore.
Plus this better respects the single-responsibility principle.