Add Modules for OpenSurgSim extensions

Add a Modules directory to OpenSurgSim. This is a place for extensions
to OpenSurgSim, and any subdirectories added to this directory will get
added to the project.
Add images to the DataGroup
Add setters to NamedData that take rvalues (move)

To help reduce copying (especially with images), add setters to
NamedData that accept rvalues, and move the data instead of copy it.
Remove some duplication in NamedData

Removed some of the duplication in the NamedData class. There was a lot
of duplicate code for looking up the index from a name. So instead, we
use the getIndex member function, which does the same thing.
Add missing documentation to setters in NamedData
Fem1DElementBeam.cppC: clean commented code + fix typo
Merge branch 'fix/fem1DBeamTypo' into 'master'

Clean up commented code + fix typo

Merged-on: https://www.assembla.com/code/OpenSurgSim/git/merge_requests/1139233
Merge branch 'feature/image-data-group' into 'master'

Add images to the DataGroup

+1: Julien Lenoir, haizhouW, Ryan Beasley

Merged-on: https://www.assembla.com/code/OpenSurgSim/git/merge_requests/1137343
Merge branch 'feature/modules-directory' into 'master'

Add Modules for OpenSurgSim extensions

+1: Ryan Beasley, haizhouW, Gughan Sathyaseelan

Merged-on: https://www.assembla.com/code/OpenSurgSim/git/merge_requests/1140713
Reduce code duplication in NamedData setters

Use the index based setter in the name based setters to reduce code
duplication.

Also, add a message to the assert in the name based setters.
Merge branch 'feature/nameddata-rvalue-setters' into 'master'

Allow moving data into NamedData

+1: haizhouW

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