Improve manifest parse speed
Retrieve the vlaues instead of the content

This should allow us to be more specific about what we want and keep the
data in flight until the last moment.  The expectation here is that this
should provide more flexibility when implementing new features.
Begin to handle interface state

Previously, we relied on the specific implementation of an interface to
append either 'up' or 'down' to the interface configuration.  This
became hard to work with because all of the logic for the interface
configuration was no longer in one place.  This was a problem because we
would set the interface state before we were finished working with the
content of the file.

This code begins to support setting an interface state on the main
bsd::interface type and appends the values after the file text is built.

This is only supported on a selection of interface drivers, so we
default to undef here and expect that if the value is set, it will only
be either a string of 'up' or 'down'.