Create a moving mean method that can create weighted moving means along an axis. Such a method is different to the cf.Field.convolution_filter method this method i) can not change the window weights as the filter passes through the axis; and ii) does not update the cell method constructs.