Added backend api for maps.

- Added initial page placeholders on client side
- Refactored some JSON encoding/decoding