Support for the SBML FBC extension

Support's been added, as well as a unit test function.

There's item that needs to be addressed on the COBRA side before merging in the support.  How should we handle a cobra.Metabolite that has a 'CHARGE' note of ('nan'|None|'NA')?  The current behavior is to set Metabolite.charge = 0 while maintaining the note.

I think that the best practice would be to set Metabolite.charge = None and then discard the 'CHARGE' note.