Add ability to serialize a Constituent to JSON

- add `json_encoding.py` module providing PytidesJson{Encoder,Decoder}
- add `serialize` method to `Constituent` class.

Note that a constituent can be fully reconstructed from its name alone,
so we don't need to serialize derivative member methods like
coefficients.