Add level key as id property for onMessage payload

This adds the leveldb key into the payload as "id" so clients can de-dupe messages. There may ultimately be a better way to structure this payload as @tec27 and I were talking about, but this seems like an easy fix that doesn't break anything for right now, so let me know what you all think.

The resulting payload for `on('message')` will look like this:

```
{
  created: 1413285032074,
  fingerprint: "4475e3b8d6da4b21b99a83c9ccb8fc46",
  id: "1413285032074!5915a31f-cac0-40b8-8854-c9210046266f",
  media: "data:video/webm;base64,GkXfowEAAA...",
  message: "an example message hi",
  owner: false,
  ttl: 600000
}
```
I changed this code on Friday, I think you must have started making this change and then rebased on top of those changes. The foreach was deleted and replaced with the loop above it, so you should be making changes in that loop.