Complete rewrite first push

Working but not finished