Make PercentPerItem also check if rule responds to #products, the same as PerItem does

Test that the code does as it should
Fix failing spec and cleanup some deprecations.