Calculating the fundamental group of $\mathbb R^3 \setminus A$, for $A$ a circle
I am not sure whether there is a nicer choice but this is how I think about it. Intuitively the fundamental group should be $\mathbb Z$ - a path may jump through the hoop a couple of times or not. I choose the open sets to model this somewhat. One open set is the interiour of a filled torus with the circle lying on the surface. The other set is the whole of $\mathbb R^3$ with the closed disk (bounded by the circle) removed. Then the first set contracts to a circle, the second set contracts to a sphere and the intersection is contractible.
Edit: To make the sets more precise: $$U=\mathbb R^3-D^2\simeq S^2$$ such that $$A=\partial D^2\subseteq D^2$$ and $$V=int(S^1\times D^2)\simeq S^1$$ such that $$A=\ast\times \partial D^2\subseteq S^1\times D^2.$$ Then $$U\cap V=int(S^1\times D^2-\ast\times D^2)\cong int(I\times D^2)\simeq\ast$$
You should definitely check out the Hatcher's Algebraic Topology book page 46.
It was very hard for me to imagine at first but $\mathbb{R}^3 - S^1$ deformation retracts onto $S^1 \vee S^2$ so just choose $S^1$ and $S^2$ for $C$ and $D$ respectively, since the space is formed as wedge product of two spaces, the intersection is going to be a point only (by definition) whose fundamental group is trivial for sure. Similarly $\pi_1(S^2)$ is also trivial then $\pi_1(\mathbb{R}^3 - S^1)$ is isomorphic to the fundamental group of the circle which is $\mathbb{Z}$.
You can add a point to get $S^3-A$, without changing the fundamental group (this follows from van Kampen's theorem). Now $S^3$ minus any point is homeomorphic to $\mathbb{R}^3$, so choose this any point to lie on $A$! This gives a new space, still with the same fundamental group, but now you've got $\mathbb{R}^3-B$, where $B$ is a line (say the x axis). Think about what would happen if you had a solid ball minus a line segment; that should give you what you need to deformation retract to a solid torus.