handle array input and output of components.
bump version.
enforce encoding and add some options.