get everything else working

... except the lemmas that say how copying_copy
    unfolds (which are Admitted)
A different approach to proving the timing

relies crucially on the "hidden" nature of the "Time"
constructor; if that were available, times could be "forged"
but we can just refrain from using it directly, I guess.
break out monad2.v
copy works!!
refactor to pull out fl_log into its own library
remove some ugly "S"s from insert

same trick causes Program to ask me to prove false
things for copy, tho, sadly.
bug
Implement naive make_array sans counting.
Add construction make directive
Add naive make array running time proof (by construction).

It's probably quite a bit more effort to show that the rt function is
O(nlog(n)).
Makefile/Dependency cleanup
Add naive_rt example
Beginning naive make_array 2
linear time proof of size is easy

... if you put the ++1 in the right place!

Move it down past the two recursive calls and the goals
generated by program aren't true.
attempt to sort out the running time of size
In playing around I needed this, so I added it for now
move the files around to have more sensible names

also, move the stuff that's not expected to be in the
future into the old/ directory

(and add some parens to insert to fix indentation)
add a little visualizer to see what the trees look like at different sizes

run 'slideshow size-scratch.rkt' to see it, or run drracket and

  (require (submod "." slideshow))

at the prompt
show diff's path too
show a few more trees.