Don't rely on count() working on lists

I made this change just now to avoid this breaking on some Traversibles I was dealing with at work, and figured I'd chuck it back for you to merge. :)

> Rationale is basically the same as for d6930f966499bd4bf76ccfeee7f5dfdc60a3df93; the 'list' may actually be a Traversible object in which case it is not obligated to implement the Countable interface