Some more studio cleanup

A little more cleanup as I try to understand Studio code.

(1) We were setting some fields on Blockly.Blocks (which is otherwise composed entirely of actual blocks). I moved this to local variables.
(2) NthStartingSkin seems really awkward to me. Instead I created a list of startAvatars that is reordered according to firstSpriteIndex.
(3) We had a circular dependency (studio.js requires block.js requires studio.js), that I'm surprised browserify is okay with.  I removed block's dependency on studio by having studio set startAvatars (which will change per level).
Separate functions sounds potentially useful for future tests but could also make sense to wait until there's another use case.