An adjoint method for gradient-based optimization of stellarator coil shapes. (31st May 2018)