A few critical bug fixes:
- `0 >> r` would be interpreted as `Reaction(Species('r'), Species('nothing')`, instead of the correct `Reaction(Species('nothing'), Species('r')`. That is, the `0` was always a product when used in a reaction.
- `r + r >> b` would be interpreted as `r >> b`, since species are keys in a `dict`.