cleanup of Avatar:: and MyAvatar::render()

MyAvatar now calls Avatar::render() which does most of the work.
Also, made ::renderBody() a proper virtual function
Merge upstream/master into "no-hands" project
cleanup: AvatarData doesn't derive from NodeData

Cleaner Interface since the AvatarData is already not the NodeList.
Reduces overhead/confusing code when parsing packets from AvatarMixer.
Merge upstream/master into "no hands" project.
fix bug: bad offset into avatar data during decode
remove dupe hand data from avatar updates

partial progress toward issue #2256
change wording of comment
don't send redundant head rot and hand pos info
Merge upstream/master into cleanup project
Ryan's requested change for rotation smoothing.
explicit casts to remove warnings
Merge pull request #2350 from birarda/audio-scaling

suppress silent streams from interface and agent
fix go to orientation to not put the user sideways
reset orientation to identity with spacebar, fix orientation storing
keep storing degrees in data-web but convert on receipt
remove orientation string debug
Merge branch 'master' of https://github.com/highfidelity/hifi into orientation-fix
remove extra debug
Merge pull request #2357 from birarda/orientation-fix

re-do orientation changes after force push to master
bump version of PacketTypeAvatarData from 1 to 2