Removed the unused package 'automata'
Implemented cooperative __init__ methods.

This implements super() in __init__ using cooperative calls to base
classes.  Each base class uses keyword arguments so that they consume
only the keywords intended for it, and pass the others along to the next
initializer in the mro.

See http://rhettinger.wordpress.com/2011/05/26/super-considered-super/
for more on this technique.
Add pushdown automata support, and a trace utility.