Trim root end off onion. Peel and quarter the onion. Scrub carrots and chop into 1-inch chunks. In a large shallow roasting pan, place soup bones, onion, and carrots. Bake, uncovered, about 1 hour or until the bones are well browned, turning occasionally.
Drain off fat. Place the browned bones, onion, and carrots in a large soup pot or Dutch oven. Pour 1/2 cup water into the roasting pan and scrape pan. Pour this liquid into soup pot.
Scrub the potatoes and chop into chunks, peel and all. Chop the celery stalks into thirds. Add celery, tomato, potato, peppercorns, parsley (including stems), bay leaf, salt, thyme, and garlic to the pot. Pour in the 16 cups (or more) of water.
Bring mixture to a boil. Skim of any scum that comes to the top. Reduce heat. Simmer for 5 hours.(Should see little to no bubbles but movement under the surface). Strain stock, once with fine strainer and once with cheesecloth. Discard meat, vegetables, and seasonings.
To clarify stock for clear soup: In order to remove solid flecks that are too small to be strained out with cheesecloth, combine 1/4 cup cold water, 1 egg white, and 1 crushed eggshell. Add to strained stock. Bring to a boil. Remove from heat, and let stand 5 minutes. Strain again through a sieve lined with cheesecloth.
Let cool to room temperature and then refrigerate. Fats (tallow) will raise to the top and solidify so it can easily be removed in pieces.