GUI v0.3:
- More work done trying to fix the NullPointerException line 37, still no success, has to do with an initialization problem
- added refresh() method which will be later used to repaint the puzzle after each iteration