Fix #396 Create Youtube Internal API
- Use Google API v3
- Implement authentication via OAuth2
- Currently support uploads
- Support non-interactive use
- See documentation for usage and information

Fix #396
Fix #379
Fix #249

Added license header

First iteration of Youtube framework, currently reimplements features of last upload tool

Added AccessTokenRefreshError to prompt user to re-authenticate

Tweaked exit logic on AccessToken error

Add metadata parsing, fully supports .ogg

Tweak confirmation logic for directory upload

Code refactor and update of comments

Code refactoring, improve comment clarity and seperation of code
shorten methods to avoid too much nesting

Separate framework from cmd line UI code

Remove prints from framework

Fix imports

Iron out bugs

Fix token and client secrets path

Add docstrings and format code

Switch config dir retrieval