Extending the interface

- deprecate isX methods to make way for getState and getRealState
- add notification methods in the interface
- add percent API in the interface
- use enum for the state of the process