[added] Router.renderRoutesToString

This PR allows the path to be given to <Routes> as a prop.

```javascript
<Routes initialPath="/some/path"> ... </Routes>
```
This only works server side. This patch also stops the URLStore and RoutesStore being started as componentWillMount is called but componentWillUnmount isn't call on server side. This would lead to a memory leak and potential async issue when multiple pages are being rendered at once.

When rendering on server side you should always make a new instance of `<Routes>` so if multiple pages are being rendered they don't change the routes in another page.

```javascript
var App = React.createClass({
  render: function(){
    return <Routes initialPath={this.props.initialPath} location="history"> ... </Routes>
  }
});

//server side
React.renderComponentToString(<App initialPath="/some/path" />);

//client side
React.renderCompoent(<App />, domelement);
```

This PR will only work for non async state server side rendering. However issue #57 has some strategies planned to make that work. This PR is a good stepping stone for async server side rendering.

All existing 50 Tests PASS!

I don't think docs need to be updated until the final server side strategy is in place.  
now on `componentWillMount` (server side) - the `updateActiveState` will be called as part of the render.

This is why `<Link />` took a re-draw to become active before, as it used to only update after initial render.