add prerender, heartbeat interface
add prerender, heartbeat interface

An extender of renderer can now insert heartbeat and prerender tasks by
supplying a function object.

daveseah/project-1401,daveseah/project-1401