building a php framework SPI