Yes, I think you are right that circular imports are fine, but they still make me a little squeamish.  

I should mention that there is still some stuff that needs to be cleaned up with regards to importing, but I am waiting until the material types to be cleaned up a bit.  Specifically, I'm not sure what the best types to import in \__init are.

Do you have a case to make about whether to just to "import burnman" where appropriate?