t() :: %Exreleasy.Manifests.App{modules: %{optional(module) => String.t}, version: String.t}
digest(atom) :: t
new(map) :: t