Cache images in memory instead of disk - Closes gh-99

Squashed commit of the following:

commit 9140059192b3c5b25d241abc2536a3ca9013b4a0
Author: Corey Frang <gnarf@gnarf.net>
Date:   Wed Feb 6 12:15:00 2013 -0600

    Make it do what you expect for --nocache, not actually cache anything

commit 0fd6ff61bbde7ebc81ea184a671ef4736ab8d671
Author: Corey Frang <gnarf@gnarf.net>
Date:   Wed Feb 6 12:09:27 2013 -0600

    Modifying cache settings to be enabled only in server.js

commit 4d13a2b110f07fda7b440a891897a22096532186
Author: Corey Frang <gnarf@gnarf.net>
Date:   Wed Feb 6 11:58:14 2013 -0600

    Date.now() instead of +new Date()

commit ba5f62def1162abee70d8c74f3a1fddf901e6d3f
Author: Corey Frang <gnarf@gnarf.net>
Date:   Wed Feb 6 11:57:04 2013 -0600

    whitespace

commit d8dee9bf84cb0a691d3a3e21d9364972b7a42c7a
Author: Corey Frang <gnarf@gnarf.net>
Date:   Wed Feb 6 11:54:52 2013 -0600

    Moving some definitions around, removed references to cacheDirectory

commit 0e294eb841cbf6094d2c6483dd540bb66d69b583
Author: Corey Frang <gnarf@gnarf.net>
Date:   Wed Feb 6 11:41:15 2013 -0600

    Moving cache to memory