added coloring, fixed the bug, added documentation and README