raising NotImplementedError on methods, for great clarity