Database locking, smart pointers, JS messages

Display "Loading..." while loading the forms. Display the "Uploading"
message as soon as it starts uploading from the website since it may
take a while for a progress message to be displayed (if ever). Forbid
updating your account with a blank password in Javascript. There is
nothing to stop you on the server from adding a blank password since it
knows nothing about the salt or hash, but if the user wishes to go to
the work to submit a blank password, it's their problem.

Additionally, under heavy load I got an exception:

terminate called after throwing an instance of 'cppdb::cppdb_error'
  what():  sqlite3:cannot start a transaction within a transaction

So I added a lock for all database actions so only one thread can
read/write to the database at a time. Then, replaced a manual allocation
and deletion with a smart pointer in case Pixels throws an error.

I added an ilDeleteImages when ilLoadL fails. This may or may not be
needed, but if it isn't, it should just check to see if the name exists
and not do anything if it doesn't exist.