Improve and polish pycaffe

- fix input preprocessing configuration in 3cac223 picking up on #733
- update examples' outputs given correct preprocessing 9d7346b, always include caffe pythonpath 45d74bd, and reword classification + time on a gtx 770 fc01ee6
- add console output with human-readable labels and a grayscale flag to classify.py courtesy of @petewarden's #735
- fix #525 by scaling data to [0, 255], doing mean subtraction, and then input scaling
I do feel bad about passing around floating point arrays called images that aren't in [0, 1], as that has tripped me up before, and I also worry about the user who passes in a float image from elsewhere without knowing about this.

How do you feel about putting this multiplication in `preprocess`, after checking the type? It could be another parameter or an optional argument in case one really wants to do something different. `mean` and `input_scale` would work as in `DataLayer`, on input in [0, 255], but float images would stay in \[0, 1\] (that way everything "nonstandard" would happen at the image-to-blob boundary, where scaling preconceptions disappear).