Fix PCIDevice ignoring missing DB attributes

Right now, the PCIDevice _from_db_object() method ignores missing
attributes on the DB object by using get(). This prevents the strict
typechecking from doing it's job, and differs from every other object
model currently in the tree. As a result, non-nullable attributes such
as dev_type are string-converted to "None" in the object, which is
definitely not the intent.

This is convention, not something we test for, but it was wrong, and
ended up breaking the next patch which introduces a scenario where this
gets checked in the unit tests more strictly. Thus, the test is in the
next aptch

Change-Id: Id6e1f444ceae13ee9fa1a9518db5a239a1d9fbe3
Closes-bug: 1221360
Merge "Fix PCIDevice ignoring missing DB attributes"