Ncomp is now a std::size_t

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
phases is now an enum, added (non-working) critical region VLE solver

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>