How exactly does one construct a covering space corresponding to a subgroup I am working throught Hatcher's Algebraic Topology and there are a number of exercises asking one to construct a covering space corresponding to a subgroup of the fundamental group, such as the following: 

Let $a$ and $b$ be the generators of $\pi_{1}(S^1 \vee S^1)$ corresponding to the two $S^1$ summands. Draw a picture of the covering space of $S^1 \vee S^1$ corresponding to the normal subgroup generated by $a^2$, $b^2$, and $(ab)^4$, and prove that this covering space is indeed the correct one.  

I am not sure how to approach these types of problems, so let me outline the things that are not clear in my mind.
For the remainder of the discussion, let $X$ be a path-connected, locally path-connected, and semilocally simply-connected space so that all of the nice theorems apply. We can construct a simply connected covering space $\tilde{X}$ of $X$ by identifying points in $\tilde{X}$ with homotopy classes of paths in $X$ based at some fixed $x_{0} \in X$. In other words $$ \tilde{X} = \{ [\gamma] \mid \gamma \text{ is a path in } X \text{ based at } x_{0} \},$$
where $[\gamma]$ denotes the homotopy class of $\gamma$ with respect to homotopies that fix the end points $\gamma$. Now this is all well and dandy and nice for proving theoretical properties about covering spaces but it does not seem apparent (to me at least) how to use this to construct a simply connected covering space. 
In proposition 1.36 Hatcher shows that for every $H \subseteq \pi_{1}(X)$, there is a covering space $X_{H}$ such that $p_{\ast}(\pi_{1}(X_{H}))$, where $p_{\ast}$ is the homomorphism induced by the covering map $p$, and his proof relies on having a construction of the simply connected covering space $\tilde{X}$. Specifically, $X_{H}$ is constructed by taking points $[\gamma], [\gamma'] \in \tilde{X}$ and declaring $[\gamma] \sim [\gamma']$ if $\gamma(1) = \gamma'(1)$. Again, this seems nice on a theoretical level but not helpful (though maybe this is because explicitly constructing $\tilde{X}$ in the first place seems difficult in practice) at all when it comes to actually constructing $X_{H}$ for a given space such as the one outlined in the problem above. 
Now I have seen solutions outlined (e.g. 
this) and it seems one simply constructs the Cayley graph of the fundamental group modulo the subgroup in question, however I fail to see exactly why that is the case. Is there a better way to view these theoretical constructions so that I can actually apply them efficiently?
 A: I know this is an old question but I'm currently learning this material myself and I think answering would be good practice for me. Hopefully someone will find it helpful...
First, we can employ Hatcher's 1.36 as you suggest, which is not so difficult to put into practice once we understand the universal cover. In this case, we claim the universal cover is the 4-valent tree, ie the infinite tree in which each vertex has exactly one incoming and outgoing $a$ edge, and one incoming and outgoing $b$ edge, and the incoming and outgoing edges of each type are distinct. (https://en.wikipedia.org/wiki/Cayley_graph#/media/File:Cayley_graph_of_F2.svg)
By the nature of how we've defined the edges, there is a local homeomorphism from this space to our base space. In the case of graphs, a local homeomorphism is equivalent to a covering map. Furthermore, it is a universal cover since it is simply-connected. Now to construct the covering space corresponding to the given subgroup, for $[\gamma], [\gamma'] \in \tilde{X}$, we say $[\gamma] \sim [\gamma']$ if $\gamma(1) = \gamma'(1)$ and $[\gamma \overline{\gamma}'] \in H$. The first property is automatically satisfied in this case since $X$ only has one vertex so any paths $\gamma, \gamma'$ will have $\gamma(1) = \gamma'(1)$. The second condition is just saying that when these paths are traversed as a loop (first $\gamma$ then $\gamma'$ in reverse), the homotopy class of this loop should lie in $H$. In practice, it is enough to identify the loops which correspond to the generators of $H$, hence we identify all $[\gamma]\sim[\gamma']$ such that $[\gamma \overline{\gamma}'] \in \{a^2, b^2, (ab)^4\}$. You can verify that this amounts to identifying the points $[a] \sim [a^{-1}]$, $[b] \sim [b^{-1}]$, and $[(ab)^2] \sim [(ab)^{-2}]$, where $[a]$ refers to the equivalence class represented by the closed loop in $X$ obtained by traversing the edge $a$, and $[a^{-1}]$ refers to traversing this path in reverse. Identifying these points in $\tilde{X}$ yields the covering space:

where single arrows are $a$ edges and double arrows are $b$ edges. It's clear that this is in fact a covering space and its fundamental group is generated by $\{a^2, b^2, (ab)^4\} \subset \left\langle a,b \right\rangle \cong \pi_1(X)$. Alternatively, another way to think about this is by group actions. By Hatcher's 1.39, any normal covering $\hat{X}$ corresponding to this subgroup will satisfy $$G(\hat{X}) \cong \pi(X)/\left\langle a^2, b^2, (ab)^4 \right\rangle = \left\langle a,b | a^2, b^2, (ab)^4 \right\rangle,$$ where $G(\hat{X})$ corresponds to the group of covering space automorphisms (deck transformations) of $\rho: \hat{X} \rightarrow X$. This group acts freely on the fibers $\rho^{-1}(x)$ of the cover, and since $X$ only has one vertex, the group will act freely on the vertices of $\hat{X}$. Moreover, since our subgroup is normal, the cover $\rho: \hat{X} \rightarrow X$ is regular, so the group of deck transformations acts transitively on the vertices of $\hat{X}$. To conclude, since the action is transitive and free, you can convince yourself that the vertices of $\hat{X}$ correspond to the elements of $G(\hat{X})$, and so we can identify $\hat{X}$ with the Cayley graph of $G(\hat{X})$. With $G(\hat{X}) \cong  \left\langle a,b | a^2, b^2, (ab)^4 \right\rangle$, the Cayley graph is simple to draw. Notice that this method of obtaining the covering space $\hat{X}$ agrees with the first method!
