Return undefined, not 'undefined' for empty named wildcards

Named wildcards are returning the string "undefined" instead of the value undefined if the wildcard is empty. This isn't quite what I expected, since it makes testing for the presence of the wildcard a little less obvious. This pull request changes the behavior so it returns the undefined value instead of the string.

So basically before:

```js
var pattern = RoutePattern.fromString("/path/*after");
pattern.match('/path/').namedParams; // => { after: 'undefined' }
```

And with this pull request:

```js
var pattern = RoutePattern.fromString("/path/*after");
pattern.match('/path/').namedParams; // => { after: undefined }
```