Add Source abstract class
Add LineAppendedSource class