Add detected_arch column to Host

I'm scared of migrations.

The idea here is to allow arbitrary architecture values from Recog or import sources, while still enforcing some regularity. 

No verification steps, because what this really needs is code/design/sanity review.
Why are we allowing a blank arch now instead of using UNKNOWN_ARCHITECTURE and having a blank string in detected_arch?