We have four rental units (2 duplexes), and have been landlording for about 5 years. I'm not an expert, but we've been successful and learned a few things. I have some thoughts on your questions, and a few other bits of advice.
I'd recommend against using a management company if you live near your properties. It's too expensive, and most people I know who have used them have felt that they did not do a good job of screening tenants or making good decisions. And they are way too expensive for what they provide. I like having a good personal relationship with my tenants, as I believe it helps avoid problems if you all know each other. I would only use an agency for long-distance management or if I had a LOT of properties (at which time maybe I'd have that be my only job and do it myself anyway).
1) Tenant selection: We ask for an application/screening fee (In WA state, the fee cannot legally exceed the actual cost of the screening), or tell them we will waive it if they go to
http://www.annualcredireport.com and print out a free credit report for us. We also call references, verify employment, etc. We haven't done criminal background checks... but we probably should... If people are willing to give you real references and print their credit report, you can weed out a fair number who may not work out.
Based on personal experience it's much better to have the property vacant and not cash flowing for a short period than rush into a tenant who will be a problem. Look for good tenants who plan to stay a long time. Less turnover means less hassle and steadier cashflow. Hamster's law: tenant drama decreases proportionally to length of time they've occupied the unit.
Probably obvious, but making your property look a little bit nicer/trendier than the competition (lots of PRETTY photos on the craigslist ad), helps attract better tenants. In our case, adding nearly new stainless appliances off craigslist (or the ding-n-dent section of the appliance store) make the kitchens look a lot nicer and allow us to charge a bit more and attract tenants who want a nicer looking place (and usually take better care of it). Many tenants have had landlords who don't care. Show them you do care and let them know you expect the same from your tenants.
2) Lease: There are various places online that you can pay a fairly small fee to download a generic lease agreement for your state (that you can modify and use forever). Many of them will also include other documents you can use: walk-through forms, pet agreements, late payment notifications, etc. You can also sometimes find PDF copies of leases or rental application forms that large agencies or apartment buildings use--you can scan them for phrasing/clauses that they use. Look at your state/local laws. Some require you to provide various disclosures along with the lease (e.g. info re: smoke detectors, etc).
3) Pets: I have a different take from others and lean away from allowing pets routinely. A problem pet can cause at least as much damage as a problem tenant. We've had to tear out carpets twice because of pet urine damage. We turned the problem into an opportunity by replacing the carpet with self-installed laminate "hardwood" floor (think Pergo). It's more durable, easier to install, trendier looking, and about the same price as carpet, and the damage deposit paid for it. Allowing pets gives you access to a bigger pool of tenants, but your cleaning and maintenance costs
will go up. Even well-behaved pets will almost certainly mean more cleaning work, refinishing doorframes/windowsills, scratches in floors, dirtier walls/carpets, etc. At the very least I'd get a larger security deposit and have a nonrefundable cleaning fee for the carpets in exchange for allowing pets. You may be able to ask an extra $50-100/month for taking on pets.
To deal with the issue of bringing in undisclosed pets: I explain the pet issue very clearly when reviewing the lease with the tenants at signing (pets require additional deposit, cleaning fees, etc). I tell them I love animals, but have had to deal with the cost of pet damage, and need to protect myself. If you really love the tenants, work with them. Everything is negotiable. If you manage the property yourself, you will have a few occasions to see the property each year (changing furnace filters, maintenance calls, etc). If you see evidence of pets that aren't on the lease, take a very hard line. They will either need to leave, or come to an agreement on an amended lease that addresses the pets.
4) Accounts: If you haven't already, set up a separate account for all the rental income/expenses. Ideally have a separate credit card that is only used for the rental account. It all makes your accounting easier in the long run.
5) Accounting: In most things, I'm a DIY-er. But, in this case, I would hire an accountant unless you thoroughly understand the nuances of how to handle rental income taxes now and how depreciation, and deductions may effect taxes when you sell: (e.g. depreciation is calculated over 27.5 years for the house--and not at all on the land; there are different depreciation periods for various types of purchases/improvements, how do you claim depreciation as a loss against rental income and against earned income, effect on how to calculate capital gains when you sell, etc...). Be
especially careful if you are claiming real estate losses against regular income. You must be a real estate professional (as defined by the IRS) to claim certain losses. Only by hiring an accountant did we realize the things we would have done incorrectly without him.
Sorry for the length. Hope it's helpful.