add new features and refactoring

-  add preview for drawing lines
- add buttom for random lines
- fix undo/redo
- improve styles