Makefile: use --make when compiling
widget: Rework selection API, introduce widgets

The previous implementation of bind with selections was awkward and
possibly not type-safe. To correct that, the latest API introduces
the Widget datatype:

  type Widget a b

  bind, (|=) : Selection a -> (a -> [b]) -> Widget a b
  chain', (|-) : Widget a b -> Selection b -> Widget a b

  embed : Widget a b -> Selection a

A Widget represent a `Selection a` whose data has been transformed to
some type `b`. The only way to perform operations on a Widget is using
the |- operator, which will apply the given selection to the widget.
Calling embed will freeze the widget and turn it back into a Selection
that can be combined with other Selections in the ususal way, e.g.,
method chaining (|.).
Update README to reflect new API
add include-css to embed css via js

Currently the elm compiler only allows you to embed JavaScript into
generated pages, not CSS. include-css works around this by taking
several css files, whose names are specified as command-line arguments,
smashes them together into a string, and then produces a JavaScript file
which will include that CSS on the page. So if you had some files

  style.css
  widget.css

that you wanted to include in your generated page, you'd do something
like this:

  elm --make `./scripts/include-css style.css widget.css` GUI.elm
add voronoi diagram example

Use the folowing command to build it:

  elm --make --src-dir=src `./scripts/build-flags` `./scripts/include-css examples/voronoi.css` examples/Voronoi.elm