made the data argument optional; second argument can be data/persist; initiation fails if no namespace is specified