Cache retrieved data in memory.

Reduces the number of calls to the database and further centralises the
logic for retrieving information from the database.
Renamed draw function to avoid naming conflicts.
Changed names of constraints in 2nd build script.
Fixing derp
Memory management.
Added code to draw entire user into memory and cache it.
Added "already in memory" check to dataf_draw function.

Derp
Added constants for archive and friendship status
New build script to add visibility to data.

0 means totally private. This is the default.
1 means visible to friends only.
2 means visible to everyone (public).
Added new dataf_visibility function.
Reworked data_get endpoint method to account for dataf_draw