Rewrite of RockShot library.

Added cancelling, giving IDs to screenshot requests and use variable
chunk sizes.