Add support for testing on Travis CI

This is continuation of PR #290. I squashed original commits into the first one, as commits individually didn't have any special value. Python 3 support is almost there (obviously file support only). Tests do not pass, but this isn't an objective for this PR. As a side effect of this PR, I had to work around issue #445 here, so that examples work but core problem is still there, though now `undefined` values won't be passed silently around. I also moved `bokeh-server`'s code to `bokeh/server/__init__.py` (`run()` function), so one can run bokeh server with `python -c "import bokeh.server; bokeh.server.run()"` and `bokeh-server` is basically a one-liner now. With this PR you can use `examples/test` or `nosetests examples` to test examples, or just `nosetests` to test everything (well almost, because documentation isn't tested yet).