Remove old way of getting options
moved <script src=passhashplus.js> from body to header

it seemed weird for it to be in the body.
perhaps it was there to enforce some sort of loading order?

it's better to enforce loading order using callbacks like
$(document).ready(function(){...});
whitespace only

indentation for improved clarity
Move database from body to header

the database was stored in a <div> in body,
now it will be stored in a <script type="application/json">
in the header
delete passhashplus-data.js

Before this commit:

passhashplus-data.js used to contain the non-portable passhashplus.html
code.

Once it had finished running its code, it would strip all references to
itself away, so that it wouldn't be included in the portable version of
passhashplus.html

After this commit:

all the portable and non portable code will live in passhashplus.js
but non-portable code will only be called when <script
id='is-file-portable'> is false
simplify event handler code

use class=nopasshash to determine which input fields should cause the
hash to be regenerated
set hashfield to readonly in html instead of javascript
whitespace only
rename the urls global to database

this is to reflect the fact that we will be storing the whole database
now, not just an array of urls
remove default password strength and password length

there is no point in setting these, because the data from the database
will take priority over these anyway.
Move code into a $(document).ready(function() {...})

The old code relied on positioning the script at the very end of the
html file. This way is more reliable.

This commit also makes a few changes to utilize jquery a little more, to
aid conciseness.
Reimplementation of passhashplus-data.js in passhashplus.js

This code is well commented.
read the comments.
version 2.2.0