Refactoring

> Originally at https://github.com/kevin-brown/mousetrap/pull/1

This is the pull request that will be used for code review, tracking progress, and eventually generating the patch set for this refactoring.
*(Continuing from IRC last night)*
We confirmed that my webcam was indeed returning a small image, 160x120 when we were requesting a 300x200 maximum image.  This was causing issues because, combined with my distance from the webcam, my nose was not able to be detected as it did not cover enough pixels (confirmed after moving closer).  After looking around a bit today, I found a StackOverflow post which cleared a lot of this up for me.

http://stackoverflow.com/a/20120262/359284