added format of optional args to comment
throw a clear error if array key types are not primitive; only primitive key types are currently supported