mini optimisations for shaping
added shapes test