Added basic network functionality (callback based)

Uses JSON to serialize, still incomplete but works for the most part.
Needs a backend!