Mifare Ultralight Write and update functionality

It would be awesome if we could have write on ultralight cards. I mean reading the content and then writing it back to the same card. Just awesome. Is it possible to do this or would that require a lot of refactoring?