Add generic handler for scriptable properties.

Update `validate_any` to use `_process_scriptable_property` instead of manually
invoking `_evaluate_expression`. The generic handler also performs validation
and normalization on the script fragment's return value, in case the script
fragment returns an invalid or non-preferred/shortcut value.

Add vim modelines to avoid tab/space and indentation mistakes.