Mastering the SPL Library: a php[architect] guide