When I wrote about building my own PBX, I mentioned that I set up Direct Inward Dialing (DID), a feature which allows virtual phone numbers to be routed directly to extensions while using shared trunks (phone lines). I figured out how to accomplish this after reading this discussion, but made improvements along the way.
Complete instructions for the DID trick and a more complete version of Tim Hunt's config can be found at voip-info.org, but I recommend using internal DIDs different from the ones suggested. All my DIDs are of the format 555-555-1234 which yeilds two benefits: with multiple accounts (lines), 555-555-1234 is a better mnemonic than bv-main, and the dashed format also distinguishes internal DIDs from external DIDs. Of course, the beauty of Asterisk is that you can do whatever you want, so use whatever DIDs work best for you. :)