As Volker said, over Q specifically the right thing to do is use CyclotomicField():
sage: K.<z> = CyclotomicField(5)
sage: z^5
1
sage: CC(z)
0.309016994374947 + 0.951056516295154*I
sage: CC(z) == CC(exp(2*pi*i/5))
True
Note that the latter is True because Sage constructs Cyclotomic fields with a specified embedding into CC (complex field) in which the root of unity generating the fields does indeed map to exp(2*pi*i/n).
Over other fields it's no good just extending by a root of the n'th cyclotomic polynomial, since that need not be irreducible! The example you gave was particularly unfortunate since over GF(5) the 5th cyclotomic poly has only 1 root with multiplicity 4. So it's quite right to say that the resulting algebra is not a field. (The question about Sage not being able to tell that the result is finite is unfortunate, and should be logged as a feature to be implemented., but is not particularly relevant to the current discussion).
I hope this helps,
John Cremona