(server <arachne-id> compiler-opts & opts)
Define a Figwheel server, a component that runs a Figwheel server and is also a consumer/producer in the
 asset pipeline.

Argumnents are:

- arachne-id (optional): The Arachne ID of the component
- compiler (mandatory): A ClojureScript compiler options map. See the ClojureScript documentation for
  possible values. The only difference is that options which specify paths (:output-to, :output-dir,
  :preamble, :externs, etc.) will relative to the asset fileset rather than the process as a whole.
- options: A map (or kwargs) of additional options for Figwheel

Currently supported options are:

- :open-file-command - Passed through to figwheel.
- :port - The port on which to run the Figwheel server
- :css? - Set to true if the Figwheel server should automatically reload modified CSS files.
Still requires :watch set to true on Input

Requires inputs to be tagged with either `src` or `public` roles, indicating whether the input
is source files ( compilation) or static files that should be merely be served. See the
documentation for `arachne.assets.dsl/pipeline` for more information about how to tag roles.

Returns the entity ID of the newly created component.