eliminate code duplication with shared context for LWRP tests
tidy up requires

It's really ugly to have to keep repeating File.dirname(__FILE__),
so we use a temporary variable, even in the case of a single require.
This minimises long "requires" lines and "requires" statements with
needing line-breaks, and should make search-and-replace a bit easier
if we later want to migrate to __dir__ (Ruby >= 2.0) or require_relative.

  http://stackoverflow.com/questions/4333286/ruby-require-vs-require-relative-best-practice-to-workaround-running-in-both

I've deliberately rejected the pattern:

  require File.expand_path('../relative/path', __FILE__)

because it relies on inconsistent semantics and inconsistent
documentation in File.expand_path:

  http://stackoverflow.com/questions/4333286/ruby-require-vs-require-relative-best-practice-to-workaround-running-in-both#comment34147297_4333552
remove unnecessary stubs

If these are required across multiple spec files in the future, they
should be refactored into a single shared_context.
add missing require

This wasn't breaking anything, but it's bad coding style to
rely on implicit dependencies.
vertically align provider tests for quick visual comparison
add debugging to Guardfile
try to get Guard only running the changed provider test

But still doesn't work for some reason :-/
move duplicated test_modify to Chef::RSpec::Pacemaker::CIBObject
move Mixlib::ShellOut stubbing code to separate module

It was not specific to Pacemaker in any way, yet was previously in
Chef::RSpec::Pacemaker::CIBObject, in a file alongside other
Pacemaker-specific code.
test delete action better, even for non-runnable LWRPs
implement Pacemaker::Constraint::Order
implement order LWRP using library code