Make plugin method call order deterministic

Previously plugin methods were appended to the global $.vellum object based on when the plugin was loaded, which was non-deterministic. Now plugin methods are attached to each Vellum instance at when it is instantiated. This has the additional benefit of reducing the overhead of plugin method calls because they do not need to check if they are enabled for the instance on which they are being called.

Fixes an intermittent bug in the interaction between ignore-but-retain and javaRosa plugins. Ignore-but-retain’s loadXML method could be called after javaRosa’s, which caused ignored itext nodes to be picked up by javaRosa.
Allow itemsets when itemset plugin is disabled
Add missing YUI uploader dependencies

These caused the uploader to fail on the SSL site due to blocked content errors in Firefox. YUI was dynamically requesting them from http://yui.yahooapis.com/
Hide constraintAttr and requiredAttr for hidden values

Case 123314
Add test for extra itext values
Use model instead of UI in addQuestion test helper
Fix itext changes bleeding back on copy question

Fixes case 125631
Discard unreferenced itext when writing XML

Had to allow itext to be ignored/retained so it would not be discarded.
Set MediaUploader version
Fix global assignment

Should add jslint static analyzer to the test suite so silly errors like this are flagged.
Prevent integer and boolean values from killing XML writer