Pass thru  encoder fixes

Fixes to pass through encoder; 

rename parameters according to naming conventions (w=#ONbits, etc..), 
fix a bug where different patterns would produce outputs of different lengths!, 
allow forced mode, which is real pass-thru only, it does directly return the input from encode (so the input can be python list with arbitrary elements, on the contrary with decoding to numpy.array output, where all elements must be numbers!)--this is useful for some usecases this encoder was intended for. 

other cleanup,speedup. 

This encoder wasn't likely used (because of the bugs discovered now), so please merge quickly, I'd like to depend on it. 

Thank you, breznak