model: Make abstract classes really abstract
Now all classes that are meant to be abstract are instantiable. That means they are not abstract. To solve the issue these classes must have abstract methods. I suggest to make __init__
abstract for all these classes