Report Issues instead of Violations.

Use of 'Violation' class is deprecated since Sonar 3.6, and replaced with Issue; Context.saveViolation is replaced by Issuable.

This also allows properly counting the issues, i.e. accounting for disable rules and switched off violations.
Add a metric for dependencies violations.
Add line of include in cyclic dependency violation.
Create violation when the same file is explicitly included twice.