Refactor pocket code so we now have one class per pocket type.