Implemented abstract classes properly (using the abc module)
Fixed markdown syntax