Added support for function validation

Hello @1000hz, 
I added a new validation that allows to call function in order to accomplish complex validation routines. 
Adding `data-fnvalidation='function_name'`, will call the function `function_name` when the validation happen. `function_name` should return `true|false` if the validation was successful of unsuccessful.