There are 27 possible corner configurations. For each there are 12 possible edge configurations. So in total 27x12 = 324 different positions. Fortunately many of them are really the same position, just mirrored or rotated. It turns out there are only 50 distinct positions. One of them is the solved position, and 2 (C1 and D1) are really the same position.
For all positions I give a simple solution that almost only consists of the four first sequences seen below (Sune, AntiSune, Rune, Bruno), and the step 7 sequences. That is pretty much the ones I use for speed cubing. They use an average of 14.1 moves and at most 20. For about half of the positions there are better known solutions, shown in blue. That's a whole lot more to memorize, but you get down to 12.9 moves on average, or 17 at most. There are better sequences for a few of them, but this is pretty close to the optimal set of solutions. All the better sequences are produced by Bernard Helmstetter, using a program he has written. He has a lot more solutions on his site. The "Benny" move seen below in B9, and it's inverse, are very useful.
These solutions ignore of the top layer's position relative to the rest of the cube. So 3 times out of 4 there will be an extra turn needed. So you might want to add 0.75 moves to the move counts here to get really correct numbers.
The positions are organized by corner configuration. There are 7 different. I have arbitrarily named them A-G, and I have drawn these really useful pictures of them that links to the page of each. They're below and at the top and bottom of each page.
Of my two indexes, Step 5+6 is more important to know than Step 6+7. So start there.