mmm, por lo que dices das a entender que primero quieres modelar las divs y despues darles los estilos. Aunque nunca lo he hecho, lo mismo podrías separar los archivos css, en uno pones lo parámetros para modelarlo, y en otro le das los estilos.
Para que tu footer se mantenga siempre debajo ponle "clear: both;" con esto siempre se quedará debajo de cualquier elemento que tenga a su altura o por encima.
Para movrlo de lugar hay dos casos, 1º si quieres mover de derecha a izquierda por ejemplo, utilizando la propiedad float.
Utiliza etiquetas <hr></hr> para separar contenidos (mira el hilo que te puso neo)
Si quieres moverlas de arriba a abajo o hacer cambios "drásticos" ya tendrías que tocar el xhtml, porque si no al final te vas a enredar. Lo que debes hacer es construir una estructura bien ordenada y clara en xhtml, una vez que ya la tengas y le hayas dado un buen orden te pones a modelarla con css. Si vas a separar forma y estilo puedes hacer primero el archivo "forma.css" y despues el "estilos.css" para darle ya los colorines y esas cosas...
Saludos