Optional parameter in the number of Markov states in count_matrix

As discussed in #24 I have added an optional nstates keyword to the count_matrix function.

Also, as discussed, the new convention for count-matrix is to return a matrix with shape (nstates, nstates). nstates is the number of microstates observed in the data at lagtime=1. 

I have changed all implementations of count_matrix in order to accompany the new behavior. The unit tests have been changed to ensure the new convention.