Added `abstract` keywords to necessary classes, and updated README