   Use it only to configure aspects of your project (like
   compilation directories) and not your application runtime.
   """
+  @spec config() :: Keyword.t
   def config do
     case Mix.ProjectStack.peek do
       %{config: config} -> config

  By default it includes the mix.exs file, the lock manifest and
  all config files in the `config` directory.
  """
  def config_files do
    [Mix.Dep.Lock.manifest] ++
      case Mix.ProjectStack.peek do

    * `:symlink_ebin` - symlink ebin instead of copying it

  """
  @spec build_structure(Keyword.t, Keyword.t) :: :ok
  def build_structure(config \\ config(), opts \\ []) do
    app = app_path(config)
    File.mkdir_p!(app)
