Created by: humzashah
A hash's keys were being filtered in a slow way by iterating over the hash twice; this PR collects the keys conditionally in the first iteration.
Additionally, this PR has updated the version of nokogiri to get tests to pass on CircleCI.