Extend CheckedType to accept unspecified values

According to the documentation, CheckedType can either
be 'yes', 'true' or 'on' ; but many tools use '[Ff]alse'
which seems to be accepted/ignored by Galaxy.
Add PermissiveBoolean datatype

<xs:boolean> can either be 'true', 'false', '1' or 'O' ; but many
Galaxy tools use 'True' and 'False' (capitalized), which appears
to be ignored/accepted by Galaxy.
This PermissiveBoolean type is meant to be used in place of xs:boolean
when needed.
Add attributes 'ftype' and 'sort' to test <output>

These are undocumented attributes.
Add (undocumented) attributes to <filter>

Add attributes 'compare', 'keep' and 'value' to <filter> tag
(though these attributes are not documented).
Add CompareType for possible 'compare' values.
Edit filter tag for output tag
Rewrite <actions> handling