Step 1: Find which attribute must be in every key.
Look at the right-hand side of every FD in $F = \{A \to BC,\ CD \to E,\ E \to A\}$. The attributes that appear on some right side are $B$, $C$ (from $A \to BC$), $E$ (from $CD \to E$), and $A$ (from $E \to A$). $D$ never appears on the right side of any FD.
Since no FD can ever produce $D$ from other attributes, $D$ can only be present in the closure of a set if $D$ was already put into that set to begin with. So $D$ must be part of every single candidate key of $R$.
Step 2: Combine $D$ with each other attribute and test the closure.
$D$ alone gives $D^{+} = \{D\}$, too small, so we must add one more attribute to $D$ and check if that reaches all of $R$.
$\{A,D\}$: $A \to BC$ gives $\{A,B,C,D\}$, then $CD \to E$ (both $C,D$ present) gives $\{A,B,C,D,E\} = R$. So $AD$ works.
$\{C,D\}$: $CD \to E$ gives $\{C,D,E\}$, then $E \to A$ gives $\{A,C,D,E\}$, then $A \to BC$ gives $\{A,B,C,D,E\} = R$. So $CD$ works.
$\{D,E\}$: $E \to A$ gives $\{A,D,E\}$, then $A \to BC$ gives $\{A,B,C,D,E\} = R$. So $ED$ works.
$\{B,D\}$: $B$ never appears on the left of any FD, so this closure just stays $\{B,D\}$, which is not all of $R$. So $BD$ does not work.
Step 3: Check minimality.
For $AD$, $CD$, $ED$ to be candidate keys and not just superkeys, no proper subset (that is, $D$ alone, or the other single attribute alone) can already reach $R$. We already know $D^{+} = \{D\}$, $A^{+} = \{A,B,C\}$, $C^{+} = \{C\}$, $E^{+} = \{A,B,C,E\}$, none of which equal $R$. So each pair is minimal.
Step 4: Conclusion.
Since $D$ must be in every key, and only pairing $D$ with $A$, $C$, or $E$ gives a closure equal to $R$, the complete list of candidate keys is exactly $AD$, $CD$, $ED$.
\[ \boxed{\text{Option (A): } AD,\ ED,\ CD} \]