just don't use Abstract lol. Think what special your implementation does. Even NovodaImageLoader :p