refactoring many things, and bug fix.
Merge branch 'master' of https://github.com/darkzin/splant