Merge branch 'release/v2_3_1' into dev
Fix Chaikin tag parsing

Also:
- add 2 shape examples with Chaikin rule tag
- add shapes to the glViewer
- add a stub in the documentation

Note: the Chaikin rule currently applied by Hbr appears to be somewhat off...

fixes #236
Fix for crash in new mesh/refiner code in OsdUtil.  Need to
set HBR_ADAPTIVE before including hbr code.  Also use an ifndef in
far/meshFactory.h so that code can be included where someone else has
already defined HBR_ADAPTIVE.
Fixed WIN32 build error when no DXSDK installed.
Removing some glGetError checks that are causing problems for Autodesk.
Updates to simple cpu osdutil classes,  split topology into a separate file, added first support for stencil evaluation.

Getting there, this code is being tested with Presto deformers and is working well.  Valgrind reports no memory errors with the simple projectTest test harness.
Updates to simple cpu wrapper classes being written for Presto deformers.
Added evaluator, first .obj file reading and subdividing.
Fixed build for uniformEvaluator if omp not found, add a public domain teapot test .obj file.
Copied .obj reading and writing code from shape_utils.h, use that
in projectTest.
Fix return value of allocate function for OsdCPUGLVertxBuffer
Fix the build: add missing #include in osdUtil & projectTest
Fixed VS2010 build errors.
Fixed problem with refinement level being hardwired to 1, fixed error messages,
other improvements.
Fixed VS2010 build errors.
Fix Chaikin rule

	The Chaikin crease interpolation mode seems to be broken:
	   - Catmark / Loop / Bilinear are passing the wrong halfedge vertex to the
	     SubdivideCreaseWeight function which results in sub-edge crease weights
	     being swapped
	   - the loop that iterates over adjacent edges needs to check against both
	     the original edge and its opposite, otherwise it may be incorrectly
	     accumulated into summation of these adjacent edges (with a 0.25 weight)

	   The proposed fix:
	   - Swaps the Dest/Org vertex passed to the SubdivideCreaseWeight (and
	     we probably want Julian to confirm that this the correct fix)
	   - Checks against both the original edge and its opposite in the iteration
	     over adjacent edges
	   - Replaces the std::vector based query with an HbrHalfedgeOperator for
	     better performance (hopefully)

	   The similar fix to OpenSubdiv been reviewed by Tony DeRose.

    Also in the fix:
        - fix "obj" tag parsing of the smooth triangle tag that was incorrectly
          associated with the crease method (and reporting the wrong errors)
        - add regression shapes for both Loop & Catmark schemes to hbr_regression
        - add same shapes to the glViewer
        - improve hbr_regression output to be more readable
        - add command-line argument parsing to hbr_regression
        - add functionality to dump an obj file when regression fails for comparison

fixes #235
Read/write .obj files in uniformEvaluator testing.
Returns the common shader config for all non-tess patcharrays.
add control cage drawing to ptexViewer
Fixed compiler warnings.