I'm a little bit concerned with your whitespace formatting. Obviously it looks pretty nice, but it seems like it could take a lot of work to align all those colons. If you have to later define a function with a longer signature, are you going to adjust the whitespace on every line to match it up?
Obviously this is personal preference... until you start working on a group project where you're sharing code bases. This is why we like to preach the PEP8 standard, as everyone is used to it.