Added Abstract class and  Incorporate the Abstract model

Added Abstract class and  Incorporate the Abstract model