Plotting Tangent Lines

cubic[x_] := (x^3-2x^2 -2 x + 1)/8;
quartic[x_] := 1+(x^4 + 3 x^3 - 20 x^2 + x + 3)/100;
g[x_] := Sin[x];
h[x_] := x^3;
chain[x_] := h[g[x]];
Manipulate[Plot[{f[x], f[x1]+f'[x1]*(x-x1)},{x,-c, c},PlotRange -> {-3,3}, Epilog -> {PointSize[.025], Point[{x1,f[x1]}]}],{x1,-c, c}, {c, 2 Pi, 0},{f, {Sin,Cos,Tan,Sec,Csc,Cot,Exp,cubic,quartic,g,h,chain}}]

Options[Plot]

f[x_] := (x^2-1)/8;
g[x_] := 1.5 Sin[.1x^2];
chain[x_] := f[g[x]];
Manipulate[Plot[{f[x], f[x1]+f'[x1]*(x-x1), g[x], g[x1]+g'[x1]*(x-x1), chain[x], chain[x1] + chain'[x1]*(x-x1)},{x,- 2 Pi, 2 Pi},PlotRange -> {-2,2}, Epilog -> {PointSize[.025], Point[{x1,f[x1]}], Point[{x1,g[x1]}], Point[{x1,chain[x1]}]}],{x1,- 2 Pi, 2 Pi}]
(* blue curve is composition *)