Place chicken breasts between two pieces of plastic wrap or waxed paper and pound until about ½ inch thick.
Place chicken in a resealable plastic bag. Combine marinade ingredients and pour in the bag. Squeeze all the air out, seal, and refrigerate for about 2 hours.
About 20 minutes before the chicken is done marinating, heat butter or oil in a large skillet. Add mushrooms and saute for a couple of minutes.
Add remaining sauce ingredients and bring to a boil. Reduce heat and simmer, uncovered, for about 30 minutes, or until sauce thickens and reduces to about ½-¼ of its original volume. When it is done, the sauce should be dark brown in color. Set aside.
While the mushrooms simmer, cook the chicken. Heat oven to 400 degrees F. Grease a 9x13-inch baking dish. Place chicken in dish and bake for 15-20 minutes, or until chicken is cooked through. Set aside.
While the chicken is baking, saute the asparagus spears in some butter or oil until crisp-tender, about 5 minutes. Set aside.
Once chicken and asparagus have cooked, layer on each chicken 1 slice provolone cheese, 3 cooked asparagus spears, then 1 slice mozzarella cheese.
Set the oven to broil. Bake for about 3 minutes, or until the cheese melts and browns a little.
Right before serving, spoon some of the sauce over each piece of chicken. Garnish with fresh parsley and serve with mashed potatoes.