New module to handle boundary operations

Boundary condition reading, solving and assembling handled here.