function copyBox(src) {
        return {
            top: src.top,
            right: src.right,
            bottom: src.bottom,
            left: src.left,
            width: src.width,
            height: src.height
        };
    }
Reveal cuts the curtain to highlight the given box,
and shows a tooltip with instructions next to the box.

@param  {String|ClientRect|HTMLElement} [box]   box used to cut the curtain
@param  {String}    [text]          text for a tooltip
@param  {Object}    [options]
@param  {string}    [options.tooltipClass]    optional class to add to the tooltip
@param  {integer}   [options.duration]        transition time in milliseconds
@param  {string}    [options.buttonText]      if set, create a button with this text label
@param  {function}  [options.buttonCallback]  if set, the callback for the button
@param  {function}  [options.padding]         extra margin in px to put around bbox
@param  {String|ClientRect} [options.tooltipBox]  box for tooltip position, if different from box for the curtain