make timeouts significantly longer

This is to avoid weird issues with experiments that make the results unreproducable.
create a hash table for storing task resource consumption.

The keys will be the task labels and the values will be a list of resource
consumptions per task. This is an unbounded storage requirement, but can be
replaced by aggregate statistics (mean, stddev (stored as sum of squares and
square of sums)) once we decide on the most important metrics for prediction.
outline approach for building resource usage history
quick hack to avoid caring about memory management.

This way the history creates its own copy of all tasks that it can modify/store at will.
skeleton for computing statistics
fill in details of history construction
set default label for unlabeled tasks
compute average memory usage
change pointers to avoid segfaults
predict that a task will use average resources before scheduling
use macro to printf int64_t
outline for handling enforcement errors
add in some details

Still missing log fetching, parsing, and task resource modification.
first logically complete handling of resource enforcement failures
wrap monitor around task command at schedule time not submit time
specify resident memory limit if task is labeled with memory
use correct printf sequence for the memory datatype
include the flag to trigger the resource monitor enforcement mode
kill task cleans up the files so no need to explicitly delete the files
really wrap the task before it is sent this time