osd::devices allow working on dmcrypt block devices.

Allowing to create a partition on top of a `dmcrypt` block devices. As well you can enable `gpt` or not.

  ceph::osd::device { "/dev/mapper/osd-${id}":
    partition_table      => false,
    partition_table_type => none,
  }

This will apply a `osd` to the `dmcrypt` devices without a `gpt` layout. When you want to use
a `gpt` table on the `dmcrypt` set this:

  ceph::osd::device { "/dev/mapper/osd-${id}":
    partition_table      => true,
    partition_table_type => gpt,
    dmcrypt_device
  }

This will create a `gpt` on the `dmcrypt` block devices. By default a `gpt` partition table will create.

  define ceph::osd::device (
    $partition_table = true,
    $partition_table_type = gpt,
    $dmcrypt_device = false,
  )

This is my solution for [Unable to create filesystem on dmcrypt devices - puppet ceph issue #13](https://github.com/enovance/puppet-ceph/issues/13). By default nothing changes for the call of the `osd::device`. 

Only when required when having a `dmcrypt` device. More things will come later.

Note: How the `dmcrypt` will be unblock isn't take care of. 


so far
4k3nd0