*modify logging levels
*use decimal module to handle large lattice like 32*32
*add OneShot parameter, the solver now can work without pre calculation nor saving intermediate data. Just set up patrow and patcol, it's ready to go.
*add candidate func. it is used when OneShot=True, ref: http://blog.csdn.net/qaswe/article/details/10009581