I know it's possible with the enumitem package, to modify the list label to a custom format.
I've hacked together solutions to a couple of other questions I found on StackExchange to give me the 'solution' below.
Whilst it's the output I want, the code in the preamble is not very concise.
Is it possible do the same thing (or similar) using only the \newlist and \setlist commands from enumitem (and any other commands from enumitem I might need)?

\documentclass[a4paper,10pt]{article}
\usepackage{enumitem}
\newcommand{\changeitem}{%
\let\latexitem\item
\renewcommand\item[1][]{\latexitem\relax{##1 --} }%
}
\newlist{steps}{enumerate}{1}
\setlist[steps]{label=\textit{Step \arabic*:},leftmargin=*}
\newenvironment{labelledsteps}[1][]
{\begin{steps}[before=\changeitem,#1]}
{\end{steps}}
\begin{document}
\begin{labelledsteps}
\item[First Label] First list item \newline
Still first list item
\item[Second Label] Second list item
\item[Third Label] Third list item
\end{labelledsteps}
\end{document}


\let\latexitem\itemin the preamble outside of the\changeitemmacro. That way,\changeitemwill operate each time on the standard LaTeX\item. As you have formulated it, each new\changeitemwill be relative to the current definition of\item. – Steven B. Segletes Apr 03 '15 at 15:20labelledstepsdoes with respect to steps, nor \changeitem, apart from adding an endash after t he label, which it would be as simple doing by hand and the label as ordinary text. Or do I miss something? – Bernard Apr 03 '15 at 15:30Both the answers posted certainly give me the flexibility I was after. Before I accept one though I would like to check that it actually is that case that this flexibility isn't present in the
– Jack B Apr 04 '15 at 15:58enumitempackage then? Specifically, I can't have a#1typed argument in the\setlistcommand when I'm setting the label text?