WIP: releasing the GIL in the inner loop of coordinate descent
Replaced numpy calls with blas in dual_gap
Made the following fixes
1. Replaced l1_norm with dasum calls
2. Changed strides to n_tasks in ddot
Replaced multiprocessing with threading
ENH: Release the GIL for sparse coordinate descent
COSMIT: Replaced xrange with range
ENH: Release GIL in the gram variant