(NETDEV-19) Make the snmp_community type ensurable

Without this patch the snmp_community type has no way to create new
community resources on the target device or remove existing resources
from the device.  This is a problem because  device can have multiple
community strings and the end user needs to be able to add or remove
them.  This patch addresses the problem by making the snmp_community
type ensurable.