feat($grab-one): almost done rendering one frame #1

- Had to bring in a Promise lib
- Clone video so we can seek to specific locations without disturbing the original/visible video
- Workaround from Chrome's issue with cloned video
- Don't try to draw until seek is done
- Don't try anything until cloned video is ready

TODO:
- Render to <img>
- Return promise from grab method
- max size param, or dimensions of video is not specified