I have included a Visio document of our network.
This is what our network currently looks like. It used to have all the access switches daisy chained together with one of them wired back to the core switch. I layered the switches so that there is an aggregate switch in each network closets. The access switches all connect to the aggregate, with the aggregate switch in each closet connected back to the L3 core switch. This L3 core switch does all the internal routing between inside VLANs, and has a default gateway of the 'inside' interface on the firewall.
What do you not like? Any obvious pitfalls?
I have a second L3 switch with a different set of fiber going to each closet. How would you add it for redundancy as well as load-balancing without creating broadcast storms?