#123: First attempt at defining a stack element struct.
#123: Fix typo in type name
Logically order types in stack.ll
Issue #123: Apparently structs do not need to be packed in our case.
#123: Document stack_element.
Issue #123: Explain that struct.stack_elem is misnamed.
#123: Implement stack_element_new().
Issue #123: String pushing for new linked stack, part 1
Issue 123: Use the new push functions.
Issue #123: Increment stack size when pushing.
#123: Fix stack_get_size().
#123: Implement new-style string pop.
#123: Use the new-style string pop.
#123: Be nice and make function name camel case, even if it is more confusing.
#123: Comment fixes
Issue #123: Free stack elements when they are popped.

This is quick & dirty, see all the TODOs in this commit.
#123: Split popping structs into its own function.
Issue #123: Provide getters/setters for most stack_element struct members.
#123: Implement type assertion function.
#123: Actually use the type assertion function.