Rule for PackageObjectClasses

Warnings for the issue presented in SI-4344: https://issues.scala-lang.org/browse/SI-4344

Unlike the current `-Xlint` warning, this rule also warns about objects defined in package objects (as in the example at the link above). It is currently in `core` as was the case with `ByNameRightAssociative`.
Maybe we could use an annotation macro or something to cut a little bit of boiler-plate? I haven't looked into them much yet.