ActionBot added and big refactor

ActionBot added.  Docs to follow.
Major refactor done to codebase following integration with SonarQube.