Add Architecture Code and clean up Item driver