Minor fixes for analysis
Refactor base templates
Allow HTML in error messages
Cleanup report urls.py
Add some determinism to devices list
Add error message when missing data from enabled devices
Implement new Job class with proper synchronization to avoid deadlock/clobbered data
Use same threading lock between both profiler datasource modules.
Fix for running reports when ignore_cache is true