I'm not sure if you're in the US or not, but I am, so my responses will be based on my experience here. Other countries may be different
First, at 16, you're not going to be able to "legally" start your own business. Most states (if not all) require you to be at least 18 to enter into a legal contract (like starting a business).
That said, first step is to get a bank account for the business. You'll want to keep business assets separated from personal assets for a lot of reasons (tax purposes, liability, etc).
Next you'll need to think about what you want to do, who your target market is, how you'll reach that market, what rates you'll charge, etc. Basically, put together a business plan. It doesn't have to be a 500 page document, but I would strongly recommend putting one together. It often seems tedious, and boring, but it will help you flush out some ideas on what you want to do, and will be a good reference going forward.
Once you know what you want to do for your business, get some basic boilerplate contracts. Someone once told me to hire a lawyer, which is a good idea if you're going to be dealing with a $50k project. But, most of my clients are no where near that level, so really, what you need to cover in your contracts are payment terms, and scope / work terms. In web work, there really are only 2 types of project work - "fixed bid", where you state the scope of the work and a static price and "hourly" where you do work as needed and bill for each hour. You'll need a contract to handle both types of work. I have found that "fixed bid" contracts are usually good for the initial project work (i.e. the first build) but once you're done with that work, moving to an hourly contract for maintenance, etc is generally a good way to go.
A few things to consider:
1) Be confident when talking to people. You almost always will know more about web development than your potential client - show that knowledge, but don't be arrogant about it.
2) Be reasonable - charging $400 / hour with a limited portfolio won't fly.
3) Watch out for "if you do this for me for free, I'll have more work" people. These people, almost universally never have more paid work, they will hold that carrot out in front if you forever.
4) On fixed bid projects, get a deposit. I usually have a minimum deposit ranging from 15% to 50% depending on the size of the project (smaller projects have higher deposit requirements for me).
5) Get an email address at YOUR website. I can't tell you how many "professional" developers I've seen that run mywebcompany.com, but have a email@example.com
email account. Don't do it. Set up firstname.lastname@example.org
and use that.
6) Invoicing - do it on a regular schedule (I do mine the first business day of the month). Of all the "former" web developers I know, this is the one thing that made them quit their business and go back to working FOR someone - they never invoiced except when they needed money. The problem with this is, many times if you don't invoice regularly, you end up with some client that's into you for 50+ hours of work for the past year. Sending them an invoice out of the blue will piss them off. Sending them a 5 hour invoice for 10 months straight - usually no problem.
7) Last, and most importantly, have FUN! Running your own business should be enjoyable. You can always get a crappy job working FOR someone.
Hope this helps. More of a "watch out for these pitfalls" response, but hopefully it's useful.