Mass Edit issues #3 and #4

This PR addresses two issues with Mass Editing of attributes with the custom array element...  First (#3) was that the form elements weren't serialised correctly when saving.  The second (#4) was that there was no "Change" checkbox, so the user had no option but to change the value of any attribute using the array frontend.  The second issue is resolved by disabling the fields (so the browser won't submit them) when "change" checkbox is unchecked.  This mimics the method used by the "simple" controls in the core.
I did think about that, but returning the original value doesn't give the code that strips out the _empty element a chance to run.  Given that the Javascript has issues when that element is still present in the array, I think it's best to make doubly sure it's gone.  This is adapted from @willtran's original code, I'm not sure if he had another reason for doing it that way as well?