Refactored av

Summary:
  - All the toxav work is now handled in threads provided by the user
  - cleaned up code
  - changed av callback behavior
    - onStarting and onStarted is now merged into onStart which is called when call is started
    - onEnding is merged with onEnd which is called when call is ended
    - onMediaChange is split into onPeerCSChange (peer requested cs change) 
      and onSelfCSChange (cs change confirmation)
  - you can now poll or select for audio/video data ( data is decoded and ready to be displayed )
  - removed horrible comments etc...