* Telegram testing and race condition fix.
Improving telegram Setup test
More coverage for telegram PushEvent test
Adding telegram HandleMessages test
Adding telegram GetUpdates test
Adding telegram TestConnection test
Adding telegram SendMessage test
(Hopefully) completely fixed race conditions with slack testing
* Adding testing to communications.go
* Slack.go improvements and increasing converage
Slack.go Adding handling for trying to send responses when the websocket isn't connected
Slack.go Adding handling for an error response other than "Socket URL has expired"
Slack.go Making handleErrorResponse return an error
Slack.go Making use of s.Connected
Slack.go Making HandleMessage return an error
Slack.go Removing SendHTTPGetRequestSlack, code now calls SendHTTPGetRequest from common.go instead
More coverage for slack GetChannelsString test
More coverage for slack GetUsernameByID test
Improving slack GetIDByName test
Adding slack GetGroupIDByName test
Improving slack GetChannelIDByName test
More coverage for slack GetUsersInGroup test
Adding slack WebSocketConnect test
Adding slack handlePresenceChange test
Adding slack handleMessageResponse test
Adding slack handleErrorResponse test
Adding slack handleHelloResponse test
Adding slack handleReconnectResponse test
Adding slack WebsocketSend test
Adding slack HandleMessage test
Adding slack SendHTTPGetRequestSlack test
* Fixing race conditions and missing exclamation mark.
* Updated documentation tool
Added templates
Updated documentation using tool
* Fixed incorrect version in web README
* Added new templates to tool.
Updated documents in templates across the code base.
Used tool to regenerate documentation.
* Removed package-lock.json form gitignore as it ensures specific package versions
* Updated all @angular web dependencies
* Resolved tslint errors using autofix option
* Resolved some more tslint issues
* Added lint scripts to package.json to easy lint the ts files
* Updated codelyzer and tslint
* Run web on travis using node 10 and run the lint task
* Resolved some more tslint issues after upgrading tslint and codelyzer
* Resolved golint issues with regards to exchange comments
* Resolved spelling errors shown by goreportcard.com
* Resolved gofmt warnings using goreportcard.com
* Resolved golint issue by removing unrequired else statement
* Refactored slack.go to reduce cyclomatic complexity
* Fixed govet issue where Slack was passed as value instead of reference