Basic support for defining separate 'parts'.  Currently, this just allows holes to propagate up to the top of the part rather than the top of the tree.  This allows other parts to be placed into holes, which wasn't possible previously.

Still needs some work on the SCAD-style syntax.  Both hole()(obj) and part()(obj) insert an extra union in the part & the hole section, which is unnecessary and bad for clarity.  But... they work
Hole/ Part now passes all unit tests
Hole & Part now don't cause spurious union in the tree.
Added example for part() in hole_example
May have introduced a bug in how holes propagate; see pipe_intersection_hole() in hole_example.py
Merge branch 'master' into sp_parts_by_hole_gh#15_19_07_2013

Conflicts:
	solid/solidpython.py
Updated @part decorator to @bom_part, since we've now added the part() function to complement hole()
added mention of part() in README
Merge tag 'sp_parts_by_hole_gh#15_19_07_2013' into develop