Cleanup: extract bindmount spec parsing

Docker-DCO-1.1-Signed-off-by: Brian Goff <cpuguy83@gmail.com> (github: cpuguy83)
Actually I'd maybe write something like:
```
func parseBindVolumeSpec(spec string) (BindMap, error) {
	arr := strings.Split(spec, ":")
	switch len(arr) {
	case 1:
		return BindMap{
			DstPath: spec,
			Mode:    "rw",
		}, nil
	case 2:
		return BindMap{
			SrcPath: arr[0],
			DstPath: arr[1],
			Mode:    "rw",
		}, nil
	case 3:
		return BindMap{
			SrcPath: arr[0],
			DstPath: arr[1],
			Mode:    arr[2],
		}, nil
	}
	return BindMap{}, fmt.Errorf("Invalid volume specification: %s", spec)
}
```