Docs: Add note about `cache()` methods stating that the data is not guaranteed to be available

* This fixes DataTables/DataTables #366
Fix: camelCase notation for column search options (`dt-init searchCols`) wasn't working

* Fix is to convert from hungarian notation to camelCase in a loop for
  the array

New: State staving object structure is now full documentated

* The structure has been altered to be camelCase notation like the rest
  of the 1.10 API. State loaded from older versions of DataTables will
  be silently ignored
Dev: Fix recent childNode removal when checking for nodes
Fix - docs: order() needs clarification on zero based indexes and return type without parameters
New: `state` API methods

* `dt-api state()` - get the last saved state
* `dt-api state.loaded()` - get the state that was loaded when the table
  was created
* `dt-api state.save()` - trigger a state save
* `dt-api state.clear()` - clear the saved state
Fix: Boolean type searching

* 1.10.0 had issues when searching for boolean data as the search
  extension methods were checking for empty data, but if found they were
  using `''` as the term to filter. It should more accurately just use
  the given data.
* Relates, the `_empty()` method was considering `false` to be empty,
  but not `true`. Both are now considered to be empty.
Fix: With deferred rendering enabled a DOM sourced table would create new nodes rather than using the exisiting one. It should be noted that deffered rendering with a DOM sourced table is completely redundant, but it should still use the same nodes.

* This fixes DataTables/DataTables #365
New: Cell styling classes for alignment of text

* This fixes DataTables/DataTables #371
New: Instance methods for a data source are now executed in the scope of that instance

* When `dt-init columns.data` / `dt-init columns.render` resolve to a
  function, that function is executed. Previously this execution was in
  the global scope, but in order to be able to use an instance as a data
  source for the row (something I wanted as part of 1.10) we need to
  execute the function with the instance's scope. A simple `call()` does
  this.
* I could add a check to see if the `rowData` is a plain object or not,
  but that would add significant overhead to the processing, and this
  particular part of the code needs to be very fast. Additionally, I
  think it is unlikely that any one was dependant on this being executed
  in global scope, so the change is made.
* This fixes DataTables/DataTables #368.
Fix: `dt-api cell()` was not selecting cells for row index 0

* Problem was the check for the index was falsy rather than checking for
  undefined
* See thread 22219 for more information
Fix docs: Add clarification for `cellData` in `dt-init columns.createdCell`

* Based on discussion in thre 22009
Fix: `dt-init createdCell` cellData prarameter now passes in the original data for the cell

* This reverts the last commit which documented the old behaviour.
  Thinking again about it, if you want to modify the rendered data use
  `$(cell).html()`.
Fix: If filtering data is null, undefined or NaN it is not included in the filter
DataTables 1.10.1 release
Fix example: Use `search` terminology

* See thread 22268
Fix docs: Add note about `dt-api cell().data()` writing to innerHTML

* See thread 22265
Fix examples: Search API examples should use consistent terminology
Remove test - its in the onhold dir
Dev: Moving on to 1.10.2 development
Fix: Regression from 1.10 whereby empty data for a column could cause an offset in the filtering column