add werkzeug routing: allows '/endpoint/<some_id>' style routing

This adds support for variable url paths just like with Flask's app.route decorator, so you can now do things like:

```
@sockets.route('/submit/<game_id>')
def submit(ws, game_id):
    ...
```
I hadn't seen pull requests #7 and #14 before I wrote this, this is essentially the same thing but done differently (and with less changes) so maybe you'll like this better? I used werkzeug since this is what Flask is using. This works fine for me although I only tested it in the context of my project. If you think this doesn't make sense I'm happy to take suggestions and improve it, seems like this is a feature a lot of people want.