doxygen update; adding Doxyfile
add write API, update expand to include dependencies, making it suitable for both a json generating visitor as well as a dot generating visitor