Handle error propagation correctly in lazy nodes

Hello @majelbstoat, @eford1, 

Please review the following commits I made in branch 'nick-lazy3'.

14a10336a7da4d53699bdf7ad50bb5a71cc040df (2013-09-10 01:50:20 -0400)
Add better documentation and function names for thunk functions

0c76541917129a1af110fb831c33ed4d2ca6eb75 (2013-09-10 01:39:03 -0400)
Handle error propagation correctly in lazy nodes


R=@majelbstoat
R=@eford1