[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.  
not totally necessary, generally React components have "state" to start with, their default is empty object not null. So I thought it should go inline with React. 

It means you can check for the state property and not have to check if state is there first. Same as a regular react component.