Prefetch data for route components
Currently we have [getInitialData](https://github.com/ream/ream/blob/master/docs/guides/preloading-data.md) but it does not inject data or props to relevant route component, hopefully we can implement a _real_ `getInitialData` which injects resolved object to component data or `getInitialProps` which injects props instead.

`getInitialData`:

```js
export default {
	async getInitialData() {
		return { count: 0 }
	},
	render() {
		return <button>{this.count /* this.$data.count */}</button>
	}
}
```

`getInitialProps`:

```js
export default {
	async getInitialProps() {
		return { count: 0 }
	},
	props: ['count']
	render() {
		return <button>{this.count /* this.$props.count */}</button>
	}
}
```

If it's possible to have `getInitialProps` then we don't need to implement `getInitialData`

---

Refs:

- [getInitialProps](https://github.com/zeit/next.js/#fetching-data-and-component-lifecycle) in Next.js
- [asyncData](https://nuxtjs.org/api/) in Nuxt.js