Add setPreviewScript for embedding frames.

PencilCodeEmbed's new method setPreviewScript allows you to put the
embedded pencil code frame into a mode where the "running" pane always
includes a set of <script> tags before the user's script.  This allows
you to bring in additional libraries or instructional code.  The argument
to setPreviewScript is an array of objects, each describing a script.

The object may have a "text" property, which is the text for an inline
script, or a "src" property, which is a script URL.  An optional
"type" property is turned into the script tag's type attribute.
Add embed.eval(expr, cb) to let frames eval expressions.

eval allows an outer frame to evaluate an expression directly
within the frame of the user's script.  Because it is based
on posted messages, the result of the eval comes in an async
callback.

This commit also adds tests for eval and setPreviewScript.