New message() method on Element::URL
Constraints have new experimental method fetch_error_message()
All field elements have new method error_filename()
move field error generation out of _string_field_start() into new _string_errors()

will allow us to move error location around, or override error generation
remove 'for' attribute from errors

we were using 'name', which was wrong - should always be 'id'.
'for' is only valid on <label> tags - we generate <span>.
Fix use of Test::Aggregate::Nested

Tests now always require Test::Aggregate::Nested.
Re-enable aggregate tests on Win32.
Don't run all tests twice under both aggregate and t/ (doh!)

Conflicts:

	Changes
fix populate()

we'd somehow ended up with a populate() in both ObjectUtil.pm and
Role::Populate.pm - removed the one from ObjectUtil.pm, and merged
their independant changes together
default_args() now support 'Block', 'Field', 'Input' pseudo elements

default_args() was documented to support elements keys for inherited
types - but this has not been the case since the 0.09000 switch to Moose.
This change brings back some of that lost functionality.
Docs updated.
require Test::Aggregate::Nested v0.371. #rt bug 87240
default_args() gets '|', '+', '-' modifiers
move definition of auto_datalist_id from Input to Field

so it works on Input field within a Multi element
default_empty_value isn't inheritable
auto_label_class: %t expands to $field->type for consistency with other fields
mk_attr_accessors() no longer attempts to make 'short' variants - was never used
MultiForm->crypt_args() shouldn't be generated with mk_attrs()
new Field inherited accessors

auto_container_per_error_class()
auto_error_container_class()
auto_error_container_per_error_class()
error_tag()
error_container_tag()
move some more methods into Role::FormAndElementMethods
move common methods into new Role::FormBlockAndFieldMethods
move config_callback() into Role::FormAndElementMethods
use single list for shared Form/MultiForm attributes