I was actually in your position fairly recently. I was working as a programmer in an engineering lab. I was the only developer, so, like you, I wasn't learning a whole lot. I also didn't like the location (I got the job at the nadir of the recession, so I didn't have much choice at the time). Plus, I spent more time doing IT support ("Hey, my printer's broken, can you fix it?" "How do you do this in Outlook?"), which wasn't a part of the job description.
Should I write a resignation letter?
I did. It was just a brief "Hey, I'm leaving by this date" sort of letter. HR likes to have something in writing, I guess. :) (Actually, I sent an email, but same difference in modern times, right?)
How much notice should I give?
I gave four weeks. Two weeks is the absolute minimum, but...I feel that for a more "professional" job like a programmer, you want to give extra time. Six weeks might be even better, if you can swing that, but I think four is enough. (For what it's worth, my predecessor at my old job gave less than two weeks' notice.)
Should I give a reason for leaving?
You're not obligated to give a reason for leaving. If you get along well with your boss, it may be nice to outline your reasons ("I found something that offered better prospects" or whatever), but I wouldn't formally give your reasons in your resignation notice. Judging by your next question, I'm guessing you don't get along well with your boss, so a simple "I found another job" would probably suffice.
Should I go to my boss who is the main reason I'm leaving or go to his boss?
I'd go to your boss. I mean, look, you don't have to criticize him excessively when you quit, you just have to say you're leaving. If the next guy and the next next guy quit quickly, even a mediocre boss should start to notice there're management issues. ;)
Should I leave all of my emails nice and organized to help the next guy/gal (They are organized now) or possibly erase them as the last several people did?
I left all of my emails. I had a separate work account that I accessed via IMAP, so after ensuring I hadn't accidentally mingled personal correspondence with the work account, I left it all on the server, and gave the server admin permission to let the new guy access the emails. Most of them weren't important, but I figured it would help him out. Like your situation, the guy before me left no emails, and very little documentation, so I thought I'd be nicer to the next person. :)
Should I leave all of the documents I worked hard to create (All of the FTP info for our different sites and what not that wasn't being kept before I got here), or should I delete them?
Leave 'em, they'll help out the new guy and it's the right thing to do anyway, since you (presumably) created them at work. Sounds like your predecessor wasn't nearly as helpful, but there's no need to be vindictive towards your replacement. :) And if you already created the documentation, it'll take less time to not delete the files.