De-duplicate code and apply clang-format on the source code.
Add support for rule 18-0-4.
Add support for rule 18-0-3.
Add support for rule 18-0-2.