adding better storage driver structure