Model Based Automatic and Robust Spike Sorting for Large Volumes of Multi-channel Extracellular Data