First round of settings serialization.  Setup an API to load and save different settings to the avatar data file.
Initial serialized settings:
Gyro look
Mouse look
Transmitter drives
Voxel rendering
Voxel textures
Star rendering
Atmosphere rendering
Avatar rendering
Oculus rift mode
Render stats
Frame stats
Look at vectors
Logging
Frustum debugging
View frustum offset
Camera frustum
Setup various debug options.
Documentation for #19308.
Store settings in an ordered map to allow for runtime getting and setting of settings.  Read the setting file on startup, then write on shut down.
Check how many matches were found for the given data type we're checking for.  1 for bool and float, 3 for vec3.  Return false and assign default values if this isn't true.
Coding standard cleanup based upon ZappoMan's suggestions.
Merge branch 'master' of https://github.com/worklist/hifi into 19308
Merge commit '6d57324d0b9fce9d6a030123689bb499ed54c8ad' into 19308
Merge branch 'master' of https://github.com/worklist/hifi into 19308

Conflicts:
	interface/src/Avatar.cpp - resolved; added avatarRotation setting that's interpreted as a vec3
Removed unused readYaw variable.
Merge pull request #471 from PhilipRosedale/master

Detect and stop moving on transmitter signal lost
Moved to function overloads instead of unique function names.
Fixed spacing issues per the coding standard.
Merge pull request #438 from Geenz/19308

#19308 - Store menu settings in the avatar data file
Added smooth gravity field so we can fly to planets and land on them, static friction to stop drifting, thrust tweaks.