nix_expr: Put parens around compound list nodes.

Nodes like Functions or RawValues may lead to evaluation errors, except
if they consist of one syntactic element. If a node is a Function, we
always put parentheses around it and if it's a RawValue, we check if the
value contains whitespace and if so, put parentheses around it as well.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>