Don't use private abstract methods - try 3

I know that private abstract methods work as long as you don't inherit
outside of the library, but i don't like them :)