@dblock You don't need an assert since it will blow up when you try to insert a nil.

Ruby allows `nil` insertion since it's a real object.
I'm okay with merging this just to keep the same behavior as `NSArray` currently has.

In the long run, I'd think twice about converting `nil` to `NSNull` so you have the same number of objects, but real nulls.
Downside of that is that you'd need to call `flatten` after map, or guard yourself somehow against sending messages to that `NSNull`s