Merge pull request #33 from DaveAckley/master

Beginning of centralization of element registration and loading
Added SaveButton and Grid.SaveState method stubs
Merge remote-tracking branch 'upstream/master'
New driver mfmc (making mfms and mfmcl).  Move dual driver to sim/
Prefer += for some plural makefile variables
Compile main.cpp into COMPONENTNAME.o so we can make multiple drivers from one source
Fix ScanIdentifier.  Add ScanCamelIdentifier
Provide possibly unterminated, but const, access to the byte buffer
Avoid \n's in log messages
Redo UUIDs yet again.  Heavily restrict legal element labels
Build new driver
Rework dynamic loading mostly to avoid undefined casting
Don't segfault on missing primary or secondary element
Move dualdriver out of gui into sim
Start using the ElementRegistry
Const correctness
Use ElementRegistry in ExternalConfig_Test