Allow DSL methods to be checked by Metrics cops

The MethodLength, CyclomaticComplexity and PerceivedComplexity cops
haven't been able to check DSL-style methods in RSpec, Sinatra, and
others. Especially in the case of Sinatra apps, the content in the DSL
is the most important part of the app, so it's important that this is
checkable.

This change adds support for a configurable list of DSL methods which
are treated as methods when running those cops. To be checked, the
methods must be invoked with a block and no receiver, and then the
contents of the block are considered the "body" of the method.