completed box-model

Again, many of the requirements were included in the original version