Change protocol for application state.

No functionality changes, but preparation for things to come.
Add an IReaclClass protocol.

Again, no changes in functionality, but we'll want to extend that
protocol later.
Move app state to React state.

... instead of props.

This will enable us to manipulate it in non-toplevel components later.
Add `reacl.core/embed' for embedding components.

Also, adjust the products example to use it.