David Joyner. Adventures with group theory: Rubik's cube, Merlin's machine, and other mathematical toys, 2nd ed., The Johns Hopkins Univer. Press, 2008.
Denote by R, L, U, D, B, F, respectively, the quarter turn clockwise when you look at the Right, Left, Up, Down, Back, and Front face. Use small letter combinations to name each edge and each corner; for example, the upper right corner near you is fur, and the top edge near you is uf. It does not matter if you call it uf or fu as long as you keep track of it consistently. For example, the set of edges and corners of the front face is {uf, rf, df, lf, urf, rdf, dlf,luf}.
You have a group with group elements R, L, U, D, B, F, the 4th power of any of which is the identity, acting on the set of 20 pieces of 8 corners and 12 edges. For example, the effect of R on that set is the permutation (uf rf df lf)(urf rdf dlf luf). For group action, I use the notation XY to mean apply X first, then Y. The quintessential complication is RU (or any two that share an edge), and using the above notation, one can write down exactly the effect of RU on the 20 pieces: It rotates the corner fur by 1/3 turn and cyclically moves the 5 corners and 7 edges. In permutation notation, the effect on fur is (fur urf rfu), for example.
It is easy to see that (R^2 U^2)^3 will swap two pairs of edges, that (RUR'U')^3 will swap two pairs of corners (prime denotes inverse), and that URUR'U'R'U'R'U will cyclically rotate 3 edges. ("Easy" to see because the effect of, say R^2 U^2, in cyclic permutation notation on the set of corners and edges consists of cycles of length 2 and 3; hence, the 3rd power will leave only those of length 2, namely, the transpositions I informally call "swap".) Call these three sequences A, B, C, respectively. These three are the most one needs to solve the cube, using conjugation X(G)X' where X is any sequence you want and G is any of the A, B, C. For example, to flip a pair of edges (by flip, I mean, for example, the permutation (ur ru)(df fd)), use any sequence X to introduce a flip into one edge of the pair of edges you want to flip (messing everything else up in doing so does not matter because X' will undo), perform A to swap the pair with some other (innocent bystander) pair, perform X' to put everything else back, then perform A to swap the two pairs back (which will restore the "innocent bystander" pair). The net result is the flipping of a pair of edges. Perform an analogous sequence using B to rotate a pair of corners, i.e. Y B Y' B for some Y that introduce a rotation of one corner of the pair of corners you want to rotate.
So, the group of the cube has 6 elements (R, L, U, D, B, F), the 4th power of any of which is the identity, and is generated by (R^2 U^2)^3, (RUR'U')^3, and URUR'U'R'U'R'U. (You can probably eliminate the URUR'U'R'U'R'U from this list since any cyclic permutation can be written as a product of transposition, but be careful that (R^2 U^2)^3 effects a pair of transpositions, not a single transposition.)
This is how I did it in the 4 days between the last day of class and graduation when I was in college.