Reworking DocumentParser to be an interface using defenders (default
methods)
Allows the implementation of a parser without helper classes.