whole_func_string: function (packet_id) {
        var req = get_req();
        var data;
        req.onreadystatechange = function packet_fetch () {
          if (req.readyState === 4 && req.status === 200) {
            data = jQuery('<div/>').text(
              JSON.parse(req.responseText).data
            ).html();
          }
        };
        // TODO: catch network errors.
        req.open("GET", "/packet/" + packet_id, false);
        req.send("");
        return data;
  		}
func_code_string: function (packet_id) {
        var req = get_req();
        var data;
        req.onreadystatechange = function packet_fetch () {
          if (req.readyState === 4 && req.status === 200) {
            data = jQuery('<div/>').text(
              JSON.parse(req.responseText).data
            ).html();
          }
        };
        // TODO: catch network errors.
        req.open("GET", "/packet/" + packet_id, false);
        req.send("");
        return data;
  		}
func_documentation_string: get a packet (blocking)