BUG: fix NDFrame.as_blocks() for sparse containers

SparseBlocks don't consolidate, so previous implementation silently
dropped all but the last blocks for given dtype.

Also, drop the 'columns' kwarg, there's reindex for that.