ENH: objective analysis

This is my initial attempt at enhancing certain components of the mapping routine. The improvements in this PR targets two areas:

1. A non-uniform grid can now specified, e.g. a grid that has higher resolution in the ABL and thins out aloft. This was an easy fix, and involved removing the `grid_shape` and `grid_limits` variables and allowing a user to input his/her own `grid_dimensions` variable.
2. Changing the Barnes weight to reflect the literature, primarily Trapp and Doswell (2000). The free parameter for a Barnes weight is the smoothing parameter, not the radius of influence like that of the Cressman weight.

As of this PR, only a constant smoothing parameter can be specified for the Barnes weight. This smoothing parameter depends on the non-dimensional smoothing parameter and the data spacing. They argue that "in terms of preservation of the phase and amplitude of the input data, predictability of the resultant smoothing and filtering, and relative insensitivity to input data unsteadiness or spatial characteristics, the isotropic Barnes weight function with constant smoothing parameter appears to be the most desirable of the schemes considered." See Trapp and Doswell (2000) for more information.