improved Formatter usage #16

I've removed the `setFormatter` method and everything is check directly in the constructor using Type hinting this pull request addresses the issue #16