[Reviewer Andy] Dynamic Sproutlet loading

Andy

Can you review the changes for dynamic sproutlet loading.  I'll email updated spec separately.

Mike
unload() is public, but it felt like good safety to make it idempotent and to call it from the destructor just in case.  (I ended up not bothering to call unload() explicitly in main - happy to change this if you think it is clearer.)