Reactions are made up of one or more molecules, as SMILES.
Any valid molecule may be a component in a reaction.
Reactions represent "single-step" entities. A scheme is our
construct for multi-step reactions.
The SMILES language is extended to handle reactions.
New operator for SMILES. The '>' separates the molecules into groups,
based on their role in the reaction (eg. reactant, agent, or product).
All parts are optional. ('>>' is a valid reaction)
Each component in a reaction has a role:
Reactant - starting material(s).
Agent - molecule which do not contribute or accept atoms to the overall
reaction (catalyst, solvent, etc.)
Product - final result(s).