General
* Item selection by either names or number using the new `items` argument, which is also the first argument to `read`.
* `filename` supplied to initializer instead of in read method
* `write` and `create` methods merged to new `write` method
Dfsu
A lot of new functionality for dfsu
Mesh primary properties and methods:
* msh = Mesh(meshfilename)
* msh.n_nodes
* msh.node_coordinates
* msh.n_elements
* msh.element_coordinates
* msh.codes
* msh.valid_codes
* msh.projection_string
* msh.is_geo
* msh.is_tri_only
* msh.plot(z=None, elements=None, label=None, cmap=None)
* msh.plot_boundary_nodes(boundary_names)
* msh.to_shapely()
* msh.set_z(z)
* msh.set_codes(codes)
* msh.write(outfilename, elements=None)
Dfsu2D primary properties and methods:
* dfs = Dfsu(dfsufilename)
* dfs.n_nodes
* dfs.node_coordinates
* dfs.n_elements
* dfs.element_coordinates
* dfs.codes
* dfs.valid_codes
* dfs.is_2d
* dfs.projection_string
* dfs.is_geo
* dfs.is_tri_only
* dfs.deletevalue
* dfs.n_items
* dfs.items
* dfs.start_time
* dfs.n_timesteps
* dfs.timestep
* dfs.end_time
* dfs.find_nearest_element(x, y, z=None, layer=None)
* dfs.get_element_area()
* dfs.read(items=None, time_steps=None, elements=None)
* dfs.plot(z=None, elements=None, label=None, cmap=None)
* dfs.to_mesh(outfilename)
* dfs.write(filename, data, start_time=None, dt=None, items=None, elements=None, title=None)
Dfsu3D (and vertical slices) primary properties and methods: as Dfsu2D and:
* dfs.n_layers
* dfs.n_sigma_layers
* dfs.n_z_layers
* dfs.top_elements
* dfs.n_layers_per_column
* dfs.bottom_elements
* dfs.layer_ids
* dfs.find_nearest_profile_elements(x, y)
* dfs.get_layer_elements(layer)