[WIP] 3D Visuals

This pull request implements basic 3D visuals, like a 3D polyhedron or a 3D cube. I think it is a prerequisite for completing volume rendering as a visual. (https://github.com/vispy/vispy/pull/458)
Docstring!
```
Visual that displays a cube or cuboid. 

Parameters
----------
size : float or tuple 
    The size of the cuboid. Float values give a cube, whereas 
    tuples may specify the size of each axis (x, y, z) independently. 
color : tuple or Color
    The color to use when drawing the cube faces.
edge_color : tuple or Color
    The color to use when drawing the cube edges.
```
I have also suggested some further API changes here:
* `vertex_color` and `face_color` are not necessary; anyone who wants to go that far probably meeds to use Mesh + MeshData anyway so they know the vertex or index order.
* `color` arg accepts Color instance
* Replaced `outline` arg with `edge_color`.