Refactoring and operation success

- factor out reusable units for easier maintainance and testability
- check success of operations with status service
It caches the result of that function. The usecase here is taht I don't want to ask the user twice for the appKey but I am also to lazy to store it explicitly.