Integration Request 4

### Features

This pull request includes many changes, including:

- SWID Integration into strongTNC
- AJAX autocompletions
- AJAX based paging
- Refactored system into multiple Django apps
- Added API endpoints for SWID part
- Added proper handling for cascading deletes (warning dialog)
- Database configuration via settings.ini
- Updated configuration so it's deployment ready (given it's configured properly)
- Many UI bugfixes and improvements
- Improved code quality (like dynamic URL resolution everywhere, factored out common parts of templates into includes, etc)
- More & improved tests, higher test coverage

### Caveats

- The API still allows read access as anonymous user
- The provided default database contains a "root" superuser with password "root"

These things were enabled to facilitate testing. If you want us to remove them for security reasons, let us know and we'll add them to this pull request. If not, we'll change those issues with the last pull request during this project.

### Upgrade Notes

If you've already installed a version that contains django-dajaxice-ng, you should uninstall it before upgrading to the new requirements. This is necessary because we switched from django-dajaxice-ng to django-dajaxice. These two packages are conflicting.

    pip uninstall django-dajaxice-ng
    pip install -U -r requirements.txt

If you have an already existing database and don't want to switch to the included default database, we provided a SQL script (https://github.com/tnc-ba/strongTNC/blob/integration4/scripts/fix_db.sql) that fixes the following issues:

- It adds `COLLATE NOCASE` to some of the columns to enable natural sorting
- It adds a database level default value for the `trusted` field

To apply, **first create a backup of the current database** and then run the following commands:

    $ sqlite3 ipsec.config.db
    sqlite> .read scripts/fix_db.sql