Add DuplicateRoot linter

Closes #109

Change-Id: I8f7a16aadfff132385cd18fcbe03050f0f97d63f
Reviewed-on: http://gerrit.causes.com/37417
Tested-by: jenkins <jenkins@causes.com>
Reviewed-by: Shane da Silva <shane@causes.com>
Clean up DuplicateRoot code and docs

Minor code style tweaks and rewording of documentation.

Change-Id: If7bcd1c0962bc41114964c5d4e398b84c7532f88
Reviewed-on: http://gerrit.causes.com/37418
Tested-by: jenkins <jenkins@causes.com>
Reviewed-by: Shane da Silva <shane@causes.com>