Reworked all isEmpty methods

Main reason to touch this are the `count() === 0` bits. It's pointless to actually count the number of elements in an array or ArrayObject if all you want to know is if there is at least one element in the array. You can stop counting if you found the first element. Performance, wohoo!