make -o work for binary compilation, bump to 0.12.1
meaning of push/pop in list functions changed

* The push and pop functions now alter the head of the list.
* Renamed append/remove_end to push_end/pop_end.
* Added push_head and pop_head.
send is now converting trees to strings, old behaviour with moved to send_tree

The send statement now converts trees to strings. It is now possible to swap a
in a parser where streams where and not get parse errors due to trees not being
accepted.

The old behaviour is now available with send_tree. This is much less common,
though still useful.