Added support for defaults (i.e. "[foo!quz]" where {foo: "quz"} if nothing matched