first Iteration, many basic operations implemented, still a lot missing