Really any device that mounts as a storage device (which is most of them). and even if you do that you won't need to hack them.
Of course, calibre already includes code that allows you to manipulate data on the prs-500. It is open source so you could use it to base your app on... as long as it is open source or private. calibre comes with a windows driver it uses to communicate with the PRS-500.