[WIP] Sparse matrix support for Decision tree

Implementation relies on a new method "sparse_get_item()", which was tested separately (https://gist.github.com/eltermann/8936354).

Open issues:

1- ~~sparse toy dataset test is failing~~

2- as Gilles [pointed out](https://github.com/eltermann/scikit-learn/commit/5ba9c367661446c3eba7e6ea54adc1ff5cdfd39f#commitcomment-5316571), sparse_get_item() implementation should be optimized.

3- implement PresortBestSplitter support