fixes issue #1151 client-side route maker error IE6-8

@chetanankola reports http://git.io/Si_T_g

    route.requires[matches[i].substr(1)] = '[^&]+';
    fails when matches[i] is a number!

Since String#match returns null or an array, replacing the
for/in with a plain old for-loop and an if(matches). @chetanankola
reports this works. This error appears to already be covered by
the test cases in tests/unit/lib/app/autoload/test-route-maker.common.js
Merge pull request #1152 from isao/routeIEfix

fixes issue #1151 client-side route maker error IE6-8