Die richtige Antwort wird unzweifelhaft lauten: verwende [`siunitx`](http://www.ctan.org/pkg/siunitx) :)
Wieso? Das Paket stellt grundsätzlich das Makro `\SI{<Zahl>}{<Einheit>}` bereit, mit dem schon mal zwei der Punkte geklärt werden: der Abstand zwischen Zahl und Einheit und die die richtige Schriftwahl für die Einheiten. Und das Makro selbst erfüllt dann Punkt drei Deiner Frage.
\documentclass{article}
\usepackage{siunitx}
\begin{document}
\[v=\SI{2.3}{\metre\per\second}\]
\end{document}
![alt text][1]
Das Paket stellt zahlreiche Möglichkeiten zur Anpassung bereit:
\documentclass{article}
\usepackage{siunitx}
\sisetup{
locale = DE ,
per-mode = symbol
}
\begin{document}
\[v=\SI{2.3}{\metre\per\second}\]
\end{document}
![alt text][2]
Daneben hat das Paket noch eine ganze Reihe weiterer nützlicher Funktionen: Makros (`\num`) zum ebenso leichten Angeben von Zahlenwerten, die (auch bei `\SI`) z.B. gerundet werden können, in wissenschaftlicher Schreibweise ausgegeben werden können, ... Auch Gradzahlen kann man mit `siunitx` leicht als solche markieren (`\ang`).
Nicht zuletzt stellt es Möglichkeiten bereit, um Zahlen in Tabellen formatiert und ausgerichtet zu setzen.
Obwohl die Makros in den Beispielen im Mathemodus eingesetzt wurden, ist das keine Voraussetzung. _Alle_ von `siunitx`' Makros funktionieren sowohl im Text- als auch im Mathe-Modus.
Das Paket ist der offizielle Nachfolger der Pakete `SIstyle`, `si` und `siunits` (sie werden alle vom gleichen Autor maintained). Andere Pakete in diesem Zusammenhang laufen IMHO unter ferner liefen. `siunitx` hat auch von `dcolumn` viele Anregungen übernommen, übertrifft es aber in einigen Bereichen.
----------
@Johannes schlägt vor, sich außredem außerdem für einzelne physikalische Größen Makros zu definieren, um die Verwendung zu vereinfachen (und Tipparbeit zu sparen):
\DeclareSIUnit{\dichte}{\gram\per\cubic\centi\meter}
\DeclareDocumentCommand\Dichte{O{}m}{\SI[#1]{#2}{\dichte}}
Macht man das für viele verschiedene Größen, lohnt es sich, das etwas zu automatisieren. Der hier verwendete Befehl `\NewDocumentCommand` stammt vom Paket [`xparse`][3], das von `siunitx` bereits geladen wird:
\documentclass{article}
\usepackage{siunitx}
\NewDocumentCommand\DeclareNewQuantity{mmm}{%
\DeclareSIUnit{#2}{#3}%
\DeclareDocumentCommand{#1}{O{}m}{\SI[##1]{##2}{#2}}%
}
\DeclareNewQuantity
\Dichte
\dichte
{\gram\per\cubic\centi\meter}
\DeclareNewQuantity
\Stoffmenge
\stoffmenge
{\mole}
\DeclareNewQuantity
\Molalitaet
\molalitaet
{\mole\per\kilo\gram}
\begin{document}
\[ \rho = \Dichte{1.02} \]
\end{document}
[1]: http://texwelt.de/wissen/upfiles/siunitx1.png
[2]: http://texwelt.de/wissen/upfiles/siunitx2.png
[3]: http://www.ctan.org/pkg/xparse