A lot of improvements.
Stability and flexibility oriented commit.
.gitignore added