Kunal/touching hidden sprite

Addresses #233, #472. 

If the asker's block is hidden, still returns true if touching.
If the surrounding block is hidden, returns false.
I think it's okay to be sloppy about false-ish tests in this case - as in most other cases in JS, too. After all, that's the whole reason they're casting it. As far as I remember I'm *always* setting the the ```isVisible``` flag to ```true```when initializing a new Morph.

Let's still do this for Sprites only, though!