spree/spree — pull request #4003 by kenjinino (2013-11-22 19:00:26+00:00)
Title: Changed remove_defunct_members zone model's method in case of compound name class

Since there is an underscore method call inside Zone model's kind method, compound class names are welcome as ZoneMembers.

```ruby
def kind
if members.any? && !members.any? { |member| member.try(:zoneable_type).nil? }
members.last.zoneable_type.demodulize.underscore
end
end
```

Therefore Zone model's callback ```after_save: remove_defunct_members``` will destroy the ones that are supposed to and the newly saved zoneable compound class name types as well. So ```"Spree::#{kind.capitalize}"``` needs to be camelized instead of capitalized.