As I said previously, it should be possible to write one on top of BrowserKit and DomCrawler quite easily, as the state is stored in PHP in them. I don't think it is already done though. But this "proper" implementation would not be able to use Selenium.

For the non-proper implementation, the guys from Sensiolabs wrote a PageObjectExtension for Behat and Mink: http://extensions.behat.org/page-object/
They have not separated all the part relying only on Mink though.