API Refactor field mapping into SpamProtector / UserForms extension

Field mappings have been refactored back into the individual spam protectors, rather than sitting on the main extension. Because extensions are singletons, keeping these details on a protected member of the extension meant that multiple form configurations could conflict with one another. It was also less accessible in instances where formfields are generated indepedently of the main extension, such as in EditableSpamProtectionField.

EditableSpamProtectionField now has additional configuration options, allowing a greater degree of flexibility for CMS users to configure spam protection.

![spam-field](https://f.cloud.github.com/assets/936064/2199521/941a4b1c-98d5-11e3-840c-7e8543ea1688.jpg)

PR for Mollom spam protector to follow