title: How to split a Python module into multiple files?
body: <p>I have a single Python module which contains 3 classes: A, A1 and A2.
  A1 and A2 derive from A. A contains functions which operate on A1 and A2.</p>
  
  <p>This all works fine when it's in one .py file. But that file has grown quite long and I would like to split A1 and A2 off into their own files. How can I split this file despite a circular dependency?</p>