This is an answer to your question,
What general resources exist for students in highschool who are very interested in Mathematics?
A patient teacher is the best resource for an interested high school student. Fundamentally what students lack is not access to mathematical content (cf. Wikipedia and countless books) but of mathematical thinkers. The high school curriculum is rigid and this steers high school math teachers into a pretty doctrinal way of thinking (bless those teachers who break out of the mold); consequently, the students follow along because they are not exposed to anything else.
The best thing you can do for a high school student is to show him or her how to think mathematically. Walk through problems with the student, explore until you find something you don't know and are curious about, ask the natural questions, and most importantly, try to set the student to up to ask the natural questions. Try to present things in a way so that you are not the lecturer who knows everything, but rather a fellow intellectual explorer.
I definitely agree with Steve Huntsman: any project should feature a computational component. Students today aren't afraid of computers, and strong programming skills are invaluable in both the science and business worlds. As Steve says, implementing an algorithm forces students to really think, and isn't entirely unlike mathematical reasoning. Plus, serious proofs tend to be out of reach of even most undergraduates, whereas numerical simulations can let any student get a hands-on interaction with a mathematical problem.
Let me demonstrate all of this with a timely anecdote.
I am teaching this summer at the annual Stony Brook summer math camp. After my introductory probability class today, a student came up to me saying she wanted to do research in mathematics. She had done some computer modeling of molecular dynamics in biochemistry, but I have no training in that area and even if I did, I imagine the mathematical models would be quite complicated.
Since any such model must contain some random dynamics (namely, diffusion), I decided to introduce random walks to her. I set up some definitions, went through some examples, and we played around with a simple, lattice-based model of molecular dynamics. After chatting for an hour or so, she asked the natural question: if we have a random walk on the 2-dimensional lattice, is it guaranteed to return?
The answer is given by Pólya's theorem: a simple random walk is recurrent in 1 and 2 dimensions, but is transient in 3 dimensions and above. But a theorem statement is not a satisfactory answer, and I knew that I couldn't explain the proof of the theorem at the level of an advanced high school student. Thus her research project was born:
- understand the ideas behind an elementary proof of Pólya's theorem, and
- use a computer to estimate $p_d(n)$, the probability that a $d$-dimensional random walk returns to the origin in exactly $n$ steps.
Voilà, a tailor-made project motivated by the student's interests, featuring both a mathematical and a computational component.