Selection Borders with handlers, fixed several bugs, new events

Bug Fixes:
- Delete useless mark DOM element when clearing selection.
- Mark position was not updated when re-using existing selection marks.
- Selection mark where wrongly positioned if pixelRatio was different than 1.

Improvements:
- Option to add selection borders with handlers to adjust the selected region.
- Raise event on selection update.
- Added startTime, endTime to getSelection return.
- Refactorer handleEvent function to be accessible from child drawer classes.
- Added playPauseSelection function.
- New parameters:
   - selectionForeground: Lets the selection appear on top of the wave. Works best with semi-transparent colors (selectionColor: 'rgba(255,0,0, .2)'). Default: false
   - selectionBorder: Create border for the selection that can be drag to edit the selection. Default: false
   - SelectionBorderColor: The color of the selection border. (Default: #000)