Visual bounds

Adds `Visual.bounds` method, allowing automatic zoom in `vispy.plot`
Eventually it would be great if we could supply arbitrary axis directions as well. This would be useful e.g. for objects that are better described as fitting within a sphere than a rectangular cube (I have brains in mind in particular). For objects that are cube-like, it should be pretty easy to figure out the geometry given an arbitrary vector. But we can always add this functionality later.