Pin right M2Crypto version into requirements.txt

This commit only requires a different install instruction with
`pip install -r requirements.txt` in the documentation and automatically
installs the right M2Crypto version.
Add html2text in requirements.txt

When html2text is missing cli.py cannot be executed for install instructions.
Changed some install instructions. Fixes #722

Use username pybossa as default (the same as in vagrant).
Minimum requirement Python 2.7.2 because of a date bug.
Use defaults for `createuser` except that user pybossa can also create DBs.
Refactor so that requirements.txt matches setup.py install

`pip install -r requirements.txt` will have now have the same result like
installing with `python setup.py install`. Versions of packages are now also
more pinned to a specific minimum version and only restricted by the next major
version which should be tested before allowing usage in PyBossa.
This packages are for historical reasons even restricted
to their minor version currently:
* Flask-Login==0.2.3
* Flask-OAuth==0.12
* Flask-WTF==0.6
* Flask==0.10.1
* SQLAlchemy==0.7.8
Fix documentation for update and upgrading pybossa
replace aptitude with apt-get
Merge pull request #725 from PyBossa/issue-722-new-installation

Issue 722 new installation
Merge branch 'master' into issue-720-app-factories

Conflicts:
	requirements.txt
Make it more generic
Install tox for running tests
Update
Config file for tox
Ignore tox folder
Update documentation