Simpler extension mechanism

Hi

This is somewhat of an unsolicited pull request, but hey that's what GitHub is about. :)

I've added some code to get rid of the current ugliness of extension creation. It's backwards compatible. 

The branch registers "named" extensions, which can be placed anywhere in your code. Documentation and the tests should describe pretty well what it does. The reasoning was that it's pretty ugly to distribute root-level `mdx_*` modules. 

Anyhow. I've got another branch with a `tox.ini` file to test against different Python versions too if you're interested. 

Cheers, 

#!A