Mostly starting over...need to rethink this.