Named Backup Functionality

Made a few alterations to support named backups. With this PR, we'll be able to do this:

    $image = Image::make('/path/to/image');
    $image->backup('original-state');

    $image->crop()->resize();

    $image->backup('proper-size');
    $image->greyscale()->save('bw-version.jpg');

    $image->reset('proper-size')->save('color-version.jpg');

Example doesn't really makes much sense as we could just save color version first but it's just an example. Focus on the functionality.