Initial commit.  Not working yet. Need to work on bugs.