New memory management system

The new memory system is an attempt to improve on
xournalpp/xournalpp#99

The old memory management system would periodically check (every 5s)
to see whether the number of pixels stored in currently
invisible pages exceeded a threshold hardcoded into the
function. If this was the case some arbitrary buffers would
be freed

This system had the following drawbacks: For one thing it was
still possible to exhaust the memory by scrolling through the
pages sufficiently fast. Also the order of the freeing of the
pages was rather insensible. In addition the hardcoded value
for the maximum number of pixels was arbitrary and independent
of the actual system being used.

The new memory management system attempts to improve on the
situation in the following way: The XournalView keeps track
of the actual size of the buffer. Before new memory is
allocated it is tried to free a sufficient amount of old
memory such that a given threshold is never exceeded. The
memory management now works with the actual size of the buffers
rather than with the number of pixels contained in them.
The amount of memory to be used for the buffers can now be
adjusted in the settings dialog. Also the buffers are freed
in the order in which they became invisible.