moving bc_p to solver_common (and renaming bcp_t)