forms.js - save forms submission content in a beacon

With this plugin all form submissions on a page are sent as a seperate beacon to the beacon server
this way you gain insight into the way people use your application support them beyond your normal
analysis and information sources.

Data gathered by this plugin may look like this:

```json
[
  {
    "name": "text",
    "value": "Cool",
    "type": "text",
    "id": "text"
  },
  {
    "name": "price_from",
    "value": "1",
    "type": "number",
    "id": "number"
  },
  {
    "name": "price_to",
    "value": "10",
    "type": "number",
    "id": "number"
  }
]
```

Where elements of the objects in the array map to this in the DOM:

- `name`: the `name` tag of a particular input element or textarea or other form submittable element
- `value`: the value returned by the browser for an element
- `type`: the type of an element such as text, password, number, radio, etc.
- `id`: the id attribute of the element

Legacy applications with only a limited amount of supportabillity and analytics on their own may be
helped by adding this to the customer support tool chain so as to understand what a user was using
the application for and help focus improvement plans on a specific goal.
For that (at least in my beacon reciever) I'd use a blacklist that'd exclude these fields from being commited to the database. Makes it easier I suppose and keeps the frontend code clean and makes it a configuration option than a code path. 

Also a bigger problem is that you'd then also need to exclude input fields like bank accounts, personal information etc etc. I'd hope the webmaster at that point is smart enough to exclude these things.