Allow reactions with species to use the DirectGuess method

The method read reactions with molecules, but the `generateReactions`
method in `KineticDatabase` returns a reaction with species. This does
help with resonance isomers, but changes had to be made to handle these
reactions.
Store reverse reaction labeled atoms as well

We already store the forward labels. There isn't a straightforward
way to get the labeled atoms from the `generateReactions` method, so
this provides the reverse labels. Alternatively, the reverse reaction
could also be generated, and the labels returned for the products that
way.