use authorization method instead of variable
remove authorize from initialize
uses new initialize and authorize
adds some specs for storage class