Allow shell quoting on CLI

Break up command-line args using shlex rather than string.split

This enables multiple-word tags using quotes:

mailpile> tag/add "three word tag"
mailpile> tag +"three word tag" 20
[Issue #398] Fix the help/variables command and API endpoint
[Issue #398] Add simple test and better displaying for help/variables
Don't hardcode dependency versions to allow flexiblity in future.
Make setup.py install work in a fresh virtualenv

i.e. without dependencies already installed.
Adding commands for crypto/gpg/searchkey and crypto/gpg/receivekey.
Added (no subject) to search results as per Issue #412
Added better <title> printing for different pages as per Isssue #361, I think this commit also haz some reworking on contact add partial stuffs
Added alt= value to select2 selected text as well as name <email> to both to hopefully improve accessibility in Issue #448
Contact testing data from Mozilla.org
Renaming embedded_in_json to render_mode, making string instead of bool
1st draft of crypto streamer
Migrated to new Layout name, moved around block title statements, added better handling when result: false state
Fixed error with initial setup
Updated Animate.css dep to fix Issue #403
Updated CSS and such to further fix Issue #403
Added better handling of error loading message for Issue #428, other fixes for this were commited earlier in restructuring the base.html into full.html and block title
Fixed \n error
Merge pull request #449 from LumenTeun/master

Reviewed the sv_SE translations.
Merge pull request #453 from gabbagabbahey/master

Fixed error with initial setup