an abstract php framework