First step on fragmenting into 4 different components with a common library. Alot of different improments done at the same time.

Author: Andreas Åkre Solberg <andreas.solberg@uninett.no>
Merge branch 'fragment' of https://github.com/andreassolberg/uwap into fragment