Refactor core userland-software unit
Summary:
Split states in sources and base. This is coherent with the same
unit in devserver and shellserver roles.
Test Plan: This change is no-op.
Reviewers: dereckson
Reviewed By: dereckson
Differential Revision: https://devcentral.nasqueron.org/D3487