Rewrite Parser logic to better follow OOP and allow easier custom parser implementation.
- Create abstract parser class to follow
- Conform existing parsers to abstract class
- Move bulk of logic into parser classes instead of update method in AltSourceManager class