Remove methods that do not need to be abstract

These methods are already in the interface, which serves the same purpose.
Decrease complexity of MemoryEngine::pop()