Detect Fixnum in attribute setter.

I think it's a bit nicer to just use the same setter for Fixnums and Arrays.  Also, implementing the setter in terms of `attr_for_bitmask` seems like a nice abstraction.  Thoughts?