Added the reverse routing with regex's named groups to Router::get()

Now routes.php can deal with the regex's named group, but Router::get() can not.

For example,
```php:routes.php
<?php
return array(
    'thread/(?P<thread_id>\d+?)/post' => array('post', 'name' => 'post'),
    'country/(?P<country>\d+?)/state/(?P<state>\d+?)/location' => array('location', 'name' => 'location'),
);
```
```php
Router::get('post', array('thread_id' => 1));
// => thread//post
```
This doesn't work.

This commit makes Router::get() to refer keys of $named_params to groups' names(thread_id, post_id) and the groups' indexes($1, $2...)

```php
Router::get('post', array('thread_id' => 1));
Router::get('post', array('$1' => 1));
Router::get('post', array(1));
// => thread/1/post

Router::get('location', array('country' => 'japan', 'state' => 'tokyo'));
Router::get('location', array('$1' => 'japan', '$2' => 'tokyo'));
Router::get('location', array('japan', 'tokyo'));
Router::get('location', array('country' => 'japan', 'tokyo'));
Router::get('location', array('$1' => 'japan', 'tokyo'));
// => country/japan/state/tokyo/location
```