Preheat oven to 325 degrees. Grease two standard loaf pans well.
Combine dry bread ingredients in a large bowl and whisk. (You can sift if you'd like, but I just whisk them.)
Combine wet ingredients in a large bowl. Slowly start to incorporate dry ingredients with a hand mixer until blended. By hand, stir in zucchini, nuts (if using) and coconut. (Mixture will be thick.)
Combine streusel ingredients.
Pour 1/4 of batter into each pan. Top with 1/4 of streusel. Then and 1/4 more batter to each pan and top with remaining streusel on each.
Bake for 1 hour and then check with a toothpick. Toothpick should come out almost clean. If it is still wet, return to oven for a few minutes. Baking time should be 1-1 1/4 hours, depending on how hot your oven is. (Gas and electric cook differently.)
When done, cool in pan on wire rack for 10 minutes. Remove from pan and allow to cool for 15 minutes on wire rack. While cooling, mix icing ingredients. Place waxed paper under rack and spoon icing over warm bread and allow to cool.