Airflow network builder and CONTAM improvements

@macumber Here is the pull request I promised earlier this week. It cleans up a number of things, improves the behavior of the translator, and also reorganizes the code a bit. Everything is an openstudio_airflow library rather than an openstudio_contam library. I considered putting the "contam" namespace under the new "airflow" namespace, but decided to leave it as-is. I'm not 100% sure that this is the right way to go, so alternatives are welcome. The functionality of the translator is not changed. I have also added some tests of the CONTAM model object - more are still needed, but this is a start.

There is a new SurfaceNetworkBuilder object that walks the model as a network and visits each surface and subsurface once. This operation is common to both CONTAM translation and AFN object generation and I do not want two completely separate chunks of code doing nearly the same thing.
@macumber No, and as I look at it now I think I want to remove it entirely. There's no duplication with the build function because that function also looks at subsurfaces. I'll look to see if there is a reason to keep it around, but if not it is gone.