(maint) Make trim_output the default for execute.

Currently none of the calls to execute are using the default options and are instead using just trim_output.  As this is the most common usage so far, set it as the default execution options.
(maint) Use tellp instead of flag for checking if ostringstream is empty.
(maint) Fix fact_resolver taking initializer list instead of vector r-value reference.

There's no need for fact_resolver to take the list of fact names by initialization value since vector<string> is implicitably convertable.  This prevents copying from the previously given initialization list.
(maint) Moving fact constants into a single file.

There's no reason to split up the fact constants based on platform.  This will just cause duplicate later when we have to implement facts on Windows.
Merge pull request #12 from peterhuene/maint

Various maint fixes.
(maint) Fix cpplint detection of C-style casts.

cpplint was making the assumption that std::function would always be prefixed by the namespace.
This caused function<bool(foo)> to be interpreted as a C-style cast which generated an error.
The fix is to remove the std:: prefix; just "function<...>" is enough.
(maint) Fix invalid use of new when throwing exception.

Exceptions should never be thrown using new (I'm looking at you, cpplint!).
(maint) Clean up code.

- Fix redundant usages of specifying fully-qualified std namespace.
- Fix string_value constructor to take r-value reference; this prevents unintended moves.
- Fix redundant returning of string() when the C++11 initializer syntax is sufficient.
- Fix missing virtual specified on virtual function; C++ doesn't require it, but I prefer it so that you can tell the function is virtual at a glance.
(maint) Fix fact resolution cycle in Linux distro detection.

A resolver should query for facts that it is currently resolving without performing a resolution.
(maint) Clean up standard header uses.

Remove include of iostream.  Add cctype/cstring where appropriate.
(CFACT-22) Implement network facts for Linux.

Implementing network facts for Linux and OSX (and probably the BSDs too).
This also includes a refactoring to fact_map and fact_resolver to support matching a resolver by a regular expression.
The following facts were implemented for Linux and OSX:

- hostname
- ipaddress
- ipaddress_<interface>
- ipaddress6
- ipaddress6_<interface>
- netmask
- netmask_<interface>
- netmask6
- netmask6_<interface>
- network
- network_<interface>
- network6
- network6_<interface>
- macaddress
- macaddress_<interface>
- mtu_<interface>
- interfaces
(CFACT-22) Fix code review issues.

Fixing issues related to GH-13 review feedback.
Merge pull request #13 from peterhuene/facts/networking

(CFACT-22) Implement network facts for Linux.