Changed push_text from a macro to a function.
This saves around 12Kb of binary size. And since make_shared_string()
does a lot of work anyway, there will be very little actual change in
The only drawback is that strlen() is no longer constant-optimized in
the fairly common push_text("str") case.
But doing a checksum of the string is bound to take about a magnitude
more time than strlen anyway.
There is no noticeable change in the 'make benchmark' times, at least.