Add filter and parser classes

Parser and Formatter are now public Plugins so providing base class is better.
This PR includes Parser API improvement.

There should not be backward compatibility issue.