Solve the 14-Pegs puzzle Introduction

A common puzzle involves a triangular board with 15 holes for tees/pegs as shown in the image below:



Starting with all the pegs in the board except for a hole at the top, the point of the puzzle is to jump pegs over one another like checkers in such a way to leave exactly one peg left.  The only valid move is to jump one peg over an adjacent peg in any direction into an empty hole.  The peg that was jumped is then removed from the board.  Play finishes when there remain no valid moves.

Spec

Your job is to write a program that can find a complete solution to the peg puzzle, i.e., one that leaves exactly one peg left.  There are multiple possible solutions, so your program just needs to print one.


Your program will receive no input.  You are not allowed to read data from any outside source.
Print out the list of 13 moves that gives a result of 1 peg remaining using this format:


  Peg 1 jumps Peg 3 to Hole 6.

The holes/pegs are numbered from top to bottom, left to right, so that the top peg/hole is 1, numbering until the bottom-right is 15.
Your program must find the solution at runtime.  Printing out a solution directly by any means other than solving it in the program is an automatic disqualification.
Bonus: receive 10 bonus points if you can output multiple unique solutions (can just print separated by blank lines).
Bonus: receive 5 bonus points if the number 15 appears nowhere in your source code.


Scoring

This is code-golf, so the shortest solution (by byte count) that prints out a correct answer will be the winner.  Bonus points are subtracted from your total byte count.  Please provide a sample output of running your program as well as a link to ideone or some similar site if possible demonstrating the execution of your program.
Ruby, score 240 238 234 = 249 - 10 - 5
s=-&gt;t,r,c{c&gt;0?(t+t.reverse).gsub(/[A-O]{2}[a-o]/){|j|s[t.tr(j,j.swapcase),r+&quot;Peg #{j[0].ord-64} jumps Peg #{j[1].ord-64} to Hole #{j[2].ord-96}.\n&quot;,c-1]}:$&gt;&lt;&lt;r+&quot;\n&quot;}
s[&quot;aBD,BDG,DGK,CEH,EHL,FIM,aCF,CFJ,FJO,BEI,EIN,DHM,DEF,GHI,HIJ,KLM,LMN,MNO,&quot;,&quot;&quot;,13]

A plain ruby implementation which prints all possible solutions to this puzzle (takes less than a minute on my computer). The first lines of output can be seen here:
Peg 6 jumps Peg 3 to Hole 1.
Peg 4 jumps Peg 5 to Hole 6.
Peg 1 jumps Peg 2 to Hole 4.
Peg 14 jumps Peg 9 to Hole 5.
Peg 7 jumps Peg 8 to Hole 9.
Peg 12 jumps Peg 13 to Hole 14.
Peg 10 jumps Peg 6 to Hole 3.
Peg 4 jumps Peg 5 to Hole 6.
Peg 3 jumps Peg 6 to Hole 10.
Peg 15 jumps Peg 10 to Hole 6.
Peg 6 jumps Peg 9 to Hole 13.
Peg 14 jumps Peg 13 to Hole 12.
Peg 11 jumps Peg 12 to Hole 13.

Peg 6 jumps Peg 3 to Hole 1.
Peg 4 jumps Peg 5 to Hole 6.
Peg 1 jumps Peg 2 to Hole 4.
Peg 14 jumps Peg 9 to Hole 5.
Peg 7 jumps Peg 8 to Hole 9.
...

And the online example can be found here.