Two questions concerning plots of functions with multiple output values:

1.
With
Plot[{x, x^2}, {x, 0, 1}]
Mathematica creates two curves with different colours.
However
f[x_] := {x, x^2};
Plot[f[x], {x, 0, 1}]
creates two curves with the same colour.
Is there any way to get the curves in different colours?

2.
Is there any way to create two plots from the output of f[x]? I want the same output the following code produces, but don't want to calculate the function twice:
Plot[f[x][[1]], {x, 0, 1}]
Plot[f[x][[2]], {x, 0, 1}]