Destructor.
~value_stack();
All dynamically allocated memory and partial or complete elements is freed.
Linear in the size of partial results.
No-throw guarantee.