fixed some bugs in utils and significantly re-worked triangulation.py
added capability to turn diagonalization off in triangulation.py
some work with diagonalization in triangulation.py
moved TimingNetwork and associated methods into a new module so pickling works correctly
removed definition of TimingNetwork and put it in a separate module so pickling works correctly
changed how classes store internal data structures so pickling works correctly
changed where pickle was imported to remove redundancies in other modules
made sure that everything works as expected
implemented command line options to read/write TimingNetworks from pickle files