Basically, you're looking at a cascaded switch design.
A decent layer-3 switch to use for the core. This will handle all inter-VLAN routing. It is also good for security, restricting access between certain VLAN if necessary. For instance if you have a VLAN for financial/accounting, does everyone else need access to those resources?
Your other switches should be managed layer-2 devices, VLAN capable, of course.
Also make sure all critical devices are connected to the core, such as servers.