Added new swid app and models

- New django app in `apps/swid`
- Model definitions in `models.py`
- Admin configuration in `admin.py`
Updated models according to current schema

- Compared models with SQL schema in strongSwan sourcecode
- Made changes to be compatible with that reference schema

The goal is that the schema can be generated by django in the future.
The main advantage of that is that we can generate the schema for
different database backends.
Added django-admin configuration file

It is now possible to view, add and edit data from all tables using the
django admin interface.
Created SWID-XML processing function

This adds `lxml` as a new requirement. In contrast to Python's built-in
XML parsers, it's much faster and also provides SAX like parsers that
don't load the entire tag into memory.

The commit also adds .swidtag files for testing purposes.
Added ajax autocomplete for the directories dropdown in the policy view

tnc-ba/strongTNC#134
Added function to import SWID tags from the workitems result field in the DB

Also, there is now a manage.py command to import swid tags from file
(tnc-ba/strongTNC#133)
Added trusted flag to device
Removed os.path.join to ensure windows compatibility
Configured urls for swid app
Created regid template
Implemented SWID inventory view
Disabled compiler optimizations on Travis CI
Fixed issue128 merge bug

A complicated merge has accidentally caused a few bugs in the following
areas:

- Group assignment
- Fixed file hashes
- Policies directory dropdown

This commit resolves those problems.
Added ajax based paging
Added SWID tag view and template
Moved get_software_ids method to tag model
Changed table header rows to th
Removed old tag and regid views
Added new auth app with useful mixins
Enforce permissions in SWID views

User should be logged in to view permissions.