Re-implements updating of the path during a crosshair drag.

Squashed commit of the following:

commit 56b396a95847d1055d66967aaee24a277d314aca
Author: Jeremy Kahn <jeremyckahn@gmail.com>
Date:   Sun Aug 24 20:40:35 2014 -0500

    Builds 0.6.3.

commit b0033d6f42ecb934eb8a8760667fb8ca44bf6e70
Author: Jeremy Kahn <jeremyckahn@gmail.com>
Date:   Sun Aug 24 20:29:17 2014 -0500

    Improves memory usage in view/background.js.

commit 32e5e25efbe47e941c03d432d32d93699cdbd8e5
Author: Jeremy Kahn <jeremyckahn@gmail.com>
Date:   Sun Aug 24 18:52:48 2014 -0500

    Eliminates previewArea abstraction.

commit 56b23f6fcb486810b9cc95d521262ebf4344e8cd
Author: Jeremy Kahn <jeremyckahn@gmail.com>
Date:   Sun Aug 24 18:30:16 2014 -0500

    Straightens out a number of weird relationships, names, and and antipatterns.

commit c6615f9cb5f453da3de2b850668a834f471e914b
Author: Jeremy Kahn <jeremyckahn@gmail.com>
Date:   Sun Aug 24 18:12:40 2014 -0500

    Rename "canvas" to "preview area."

commit f9a3eb5081a5afebb3100fd2008a088867812cdd
Author: Jeremy Kahn <jeremyckahn@gmail.com>
Date:   Sun Aug 24 18:03:37 2014 -0500

    Some cleanup and minor optimization.

commit 9e9aff6a0acc47b31393e72cf319aad4edaddebd
Author: Jeremy Kahn <jeremyckahn@gmail.com>
Date:   Sun Aug 24 08:33:27 2014 -0500

    Updates path on crosshair drag.