Great work, nice and simple! Although I would override the plain addCompone

Great work, nice and simple! Although I would override the plain addComponent method to place the component at the center zone for example (not throwing IllegalStateException).

Thanks for feedback! New version 0.6 implements addComponent by adding components sequentially to the free slots if any is available.