Updates interfaces and exceptions
Merge branch '3.4/feature/dependency-injection' of github.com:cyrgit/kli into 3.4/feature/dependency-injection