Fix isuniquevalue with pk not internalid
Various validation improvements

Mainly to address http://www.fabrikar.com/forums/index.php?threads/ajax-validation-never-ending-in-forms.36907/ but other minor issues addressed also.

1. Move element validation to element.js in order to allow multiple element validations in parallel.
2. Clean code to minimise JsHint messages.
3. Remove ajaxmethod - post is default and since post must be used (since gets indicate a prefilter), this has no point.
4. Maximise use of mootools Request events to ensure clean use of spinner.
5. Correct typos in Fabrik Events (by adding corrected name rather than replacing existing)
6. Make consistent error reporting console log format.
Address bug found by Rob
Missing _
Fix bug when r not array

Flatten only applies when r is an array.
Minor tweak to error logging ...

... to improve error message.
Fix remaining stuck spinners etc.

element.js:
1. Fix remaining stuck spinners
2. Make validation messages display correctly (J3 tips still to be
fixed).
3. Tidy up setErrorMessage
4. Add ajax debug status messages
5. Add validation error message display to user
6. Spell check

form.js:
1. Fix remaining stuck spinners
2. Spell check
Fix spurious success messages...

... when ajax validation is off.
Fix corner case of hidden element last in row...

... plus align Details Bootstrap to Form Bootstrap.
Much cleaner way of ensuring row is closed.
Make similar changes to bootstrap_tabs
Format (locale) dates toISO8601 (needed in Firefox calendar.js)
Typo
added: placeholder {groupX_label} to override group labels in url
fixed: email link not routed correctly with sef urls on
adding missing rel attribute to print buttons in bootstrap details templates
routing email popup url
added dropdown element, bootstrap class option and input class
fixed: notice in list model related to orderby
fixed: JQUerybuilder move meant that when merging data, ordering was not reset and duplicate records were shown