Modifies _clean_empties function to take forbidden traits into account
in addition to required traits.
Added unit test test_resources_from_request_spec_flavor_forbidden_trait
to test that a single forbidden trait doesn't get lost in the
resources_from_request_spec function.
Also updated the functional test
test_flavor_forbidden_traits_based_scheduling to do the right thing.
NOTE: test_utils needed a tweak in this (rocky) cherry-pick to reference
RequestGroup from placement/lib since objects.RequestGroup wasn't
introduced until stein [1].
[1] I46c97d2641d9685ef59771314665a17a5236097d
Change-Id: I491b10c9c202baae4a37034848147f910a50eebf
Closes-Bug: #1821824
(cherry picked from commit c088856c8c)
(cherry picked from commit 6a5be4ae25)