Heat olive oil in a large, heavy bottomed soup pot over medium heat. Add onion and garlic, sauté until softened (about 2-4 minutes). Add chicken stock, water, carrots, and sweet potatoes. Bring to a boil, reduce heat to low and add chicken. Cook on low heat uncovered for 1 ½ hours. Remove chicken and set aside to cool in the refrigerator. Puree stock and vegetables in batches until smooth. Remove skin from chicken. Remove meat from bones and cut into bite-sized pieces. Return meat to pureed broth; bring to a gentle simmer, season with salt and pepper. Add spinach and snap peas, stir and serve.