title: Export decorator that manages __all__
body: <p>A proper Python module will list all its <em>public</em> symbols in <a href="https://stackoverflow.com/q/44834/1468366">a list called <code>__all__</code></a>. Managing that list can be tedious, since you'll have to list each symbol twice. Surely there are better ways, probably <a href="https://stackoverflow.com/q/6206089/1468366">using decorators</a> so one would merely annotate the exported symbols as <strong><code>@export</code></strong>.</p>
  
  <p>How would you write such a decorator? I'm certain there are different ways, so I'd like to see several answers with enough information that users can compare the approaches against one another.</p>