Feature/network scan

Re-written network scanning code to be more flexible. Next step will be to put a scheduler on top of this that will allow scheduling of re-scans. However the concept of idle scanning does now exist (though you can't yet constrain which adapters it will run on).