add blender-compatible X3D export to csg.js

This commit adds a toX3D() function to CSG objects.

The resulting X3D scene will contain a separate shape for each color
that has been used. Each shape will use a material of its respective
color.

This approach (as opposed to using the <ColorRGBA> element) has
been selected because the resulting X3D file can be successfully
imported into Blender.
add UI to let user choose between different export formats

This adds a new <select/> element as OpenJsCad.Processor.formatDropdown.

The functions mimeTypeForCurrentObject() and extensionForCurrentObject()
have been replaced by getFormatInfo(format), which returns information
about a given export format.

The currently selected format can be retrieved with selectedFormat().
In most cases, selectedFormatInfo() can be used for convenience.
add HTML5 "download" attribute to the "download exported file" link

This commit sets the "download" attribute on the generated
download link to force a download of the file.

This is useful to prevent the browser from displaying the
generated .x3d file.
Merge pull request #15 from jboecker/x3d-export

X3D export