Clean up and brush

Change log:
- Changed the code so that event listeners are only applied at the
start, and millions of event listeners aren't added each time you move
the mouse.
- Added brush sizes

To do:
- Increase readability of the code
- Create a proper function for calculating surrounding pixels so that
more brush sizes can be easily implemented
- Create a proper function for brush sizes