Initial API. Need to change how bundles require other bundle's extensions.

Current method of requiring directly does not work with this API. Need to make an API function to get and mount another bundle's extension.
Draft of full-stack data binding :eyes:
Allow for nodecg variables to be initialized with a value
No excuse for this one really.
Store socket.io instance so other funcs can actually use it
what is wrong with me
fixed infinite loop :no_good:
stop repeating yourself
rename "lib/includes" to "lib/client_includes"
partial draft of SyncedVariables lib that keep all syncedvariables on the server
Use events to communicate with extensions, Socket.IO to communicate with clients
... I think extensions can use syncedVariables now?

IDK probably not, gonna work on client-side API now, jah bless
Client API maybe works?
Fool me once, shame on you. Fool me twice, shame on javascript.
Think I'm close. Client-side socket callbacks aren't working yet though.
Checking for an existing var now works
vars appear to be syncing between client and server!
server-side setters work
Added read-only config to browser API (may remove sensitive config options), moved all EJS templating to viewsetup, nodecg.js gains syntax highlighting :clap:
API works on dashboard again SORRY TEAM