Assert non-empty state quantities.

This avoids generating a null-pointer dereference for

   &s[0]

in case of s.empty().
Merge remote-tracking branch 'atgeirr/master'
Rename 'phase' parameter p->phase to avoid confusion.
Implement simple constructor for sparse, diagonal matrix.

This is, effectively, the same as MATLAB's

    spdiags(d, 0)

constructor.
Implement first cut at pressure system assembly.

Compile-tested only.
Use upwind mobility flux.
Put spdiag() into an anonymous namespace.

This avoids warnings (GCC 4.6) about missing prior function declaration.
Added variables() static construction method.
Added wells to solver interface, not used for anything yet.