Remove $VERBOSE = nil from tasks.rb

Permanently setting $VERBOSE to nil causes unwanted side effects (warnings generated by app code are
silenced when triggered by a rake task but visible otherwise). silence_warnings {} would be safer to
use here since it resets $VERBOSE back to what it was when the block finishes.
Refactor `ArrayParser`

* Constantize parse token
* Remove extra param passed to `parse_data`
assert_no_queries should allow to ignore some queries
assert_no_queries should ignore certain sqls

postgresql test if randomly executed then executes "SHOW max_identifier_length". Hence
the need to ignore certain predefined sqls that deal with system calls.
Improve documentation for controller how to get included helpers [ci skip]

Closes #11671
Merge pull request #11673 from jetthoughts/11671_describe_access_to_helpers_from_controller

Improve documentation for controller how to get included helpers
all `scope_chain` methods allocate new arrays, no need to dup
Merge pull request #11668 from neerajdotname/make_test_order_independent_2

Make test order independent
Merge pull request #11606 from vipulnsward/refactor_array_parser

Refactor `ArrayParser`
Merge pull request #11601 from TylerRick/dont_permanently_silence_all_warnings

Remove $VERBOSE = nil from tasks.rb