Add basic pattern matcher.  Fix checkstyle.

This is a TOL branch with a pattern matching facility.  This will likely
change as I replumb the internals to properly handle lambdas, plugins, and
to properly handle deserializing structs in {{template}} statements.

Squashed commit of the following:

commit 0107cc047a36d298d6808ce3b3eefad5349b904a
Author: Brian Wickman <wickman@twitter.com>
Date:   Sun Jun 16 14:39:51 2013 -0700

    fix me some checkstyle

commit 57d43946deb7fd18e6e93fdbfff81eef5fdf15dd
Merge: ac98d75 82aceca
Author: Brian Wickman <wickman@twitter.com>
Date:   Sun Jun 16 13:23:24 2013 -0700

    merge master

commit ac98d756802e50af70c55f08359775cf31674958
Author: Brian Wickman <wickman@twitter.com>
Date:   Sun Jun 16 10:16:37 2013 -0700

    stuff