Computational Methods for Free and Moving Boundary Problems in Heat and Fluid Flow