Issue11 2

Main feature:

opencsg + cgal PNG output from command line

 openscad -o o.png example/example001.scad                  # opencsg output
 openscad -o o.png example/example001.scad  --render     # CGAL output

Changes:

Refactor of View classes:
 GLView split into QGLView and 'parent class' GLView.
 GLView inherited by OffscreenView
 split out several functions (showAxes, showCrosshairs)
 duplicate code removed

Refactor cameras:
  new classes: GimbalCamera (trans/rot/dist ) and VectorCamera (eye,center)
  GLView has a 'gcam' and 'vcam' accessed by QTGui and Offscreen respectively

Refactor of opencsg:
 opencsg_prep() contains code from test, moved into OpenCSGRenderer
 export_png and test code now link to opencsg_prep()

Other:

lodepng updated to newest version

multmatrix uses Value() to output doubles, to fix cross-platform test errors. expected .txt updated

guicgalpngtest & guiopencsgtest introduced

test_pretty_print wiki code deprecated, now outputs single .html file with inline base64 images,
for easier uploading and sharing. 

new: test_upload.py provides sftp upload script using paramiko python library

virtualfb.sh improved portability

Todo:

make --viewport option actually work + not crash

clean up opencsg_prep() function, move to different location
 (Currently it is in the OpenCSGRenderer.cc file, it could be better
 in, maybe, CsgInfo.cc. It also could use cleaner parameters.
 also we could unify mainwin.cc with the opencsg_prep() function)

Enable --viewport option on commandline (or maybe call it --gimbal-camera)

Clean up Camera code in GLView. Make smallAxes work in Offscreen. 

Fix indentation on certain files (test_upload.py)

Currently passes 100% of tests on 
clang - x86-32 ubuntu 12.04
gcc - x86-64 debian
gcc - ppc64 fedora 18