Add CopyPropertiesBehavior class
Accessible can check wether a property is readable/writeable
Improvements to CopyPropertiesBehavior

Add Threadsafety
Add checks for valid properties
Add the ability to assign a manager type
Add Tests for CopyPropertiesBehavior
Rename CopyPropertiesBehavior to TransferPropertiesBehavior to match the current naming convention
Fix order in cmake files
Add Property struct to Accessible
made isReadable and isWriteable const

other formatting changes
Fixes cmake's FindGLUT on Windows: sets cmake variable from environment.

On Windows, FindGLUT.cmake uses an internal variable called GLUT_ROOT_PATH,
which is currently unset.  This commit sets that cmake variable based on
an environment variable of the same name.

1) Download Windows binaries for GLUT:
https://www.opengl.org/resources/libraries/glut/glut_downloads.php
2) Create the directory structure: glut/include/GL, and glut/Release
3) Place glut.h in glut/include/GL
4) Place the glut32.dll and glut32.lib files in glut/Release
5) Create an environment variable called GLUT_ROOT_PATH pointing at the
base folder: glut
6) Start/restart cmake so it knows the new environment variable:
delete the cache, configure, generate.
Merge branch 'fix/cmake-findglut-on-windows' into 'master'

Set cmake variable to find GLUT on Windows

+1: haizhouW, Harald Scheirich, gsathyaseelan

Merged-on: https://www.assembla.com/code/OpenSurgSim/git/merge_requests/621503
Documentation updates
Merge branch 'feature/behavior-copy-properties' into 'master'

Create a Behavior to transfer properties

Merged-on: https://www.assembla.com/code/OpenSurgSim/git/merge_requests/609193