fix framerate limit

tested with, on my computer, fast OpenGL (default) and slow OpenGL
(LIBGL_ALWAYS_SOFTWARE=1 environment variable) and with --no-threads,
--no-sim-thread and --no-opengl-thread, and with 'flat' and 'spiky'.
Only on Linux though.  So hopefully it works well.  Timing is tricky.
make max framerate configurable
fix spiky with constexpr (yeah, the fix is ugly, other fixes are uglier)

for -DPARANOID.
refactor, make memoized<> slightly nicer
fix sense of operations in spiky
add a patricia_trie operation
add some release process notes
Merge branch 'master' of https://github.com/elidupree/Lasercake
created "playground" scenario
Merge branch 'master' of https://github.com/idupree/Lasercake
made 'playground' the default scenario

the old default scenario is now called 'empty_box'
limited the acceleration of "jump"

so that you can jump a little without having to
   wait a while to come down, or slow your descent
   without immediately popping upwards again.
I also renamed it to "jump/fly" to be more accurate.
neatened up conveyor code
Made conveyor-corners more practical

Now, conveyors also cause tiles to stay on the
   conveyor axis instead of sliding off to the side.
This behavior is actively beyond what would happen due to
   mere friction of the type that already exists in
   the tile-physics code... not that that friction
   has a pricipled reason to be as it is.
added dir param to conveyor_belt()
Added starting refinery/conveyors to 'playground'
Made the robot start in a nicer place in 'playground'