added domain model
added activity diagram
main skeleton
World#step should do a step for each cell
World#step should remove dead cells
Cell with no energy should be dead
Cell with energy should be alive
Cell with energy #step should descrease its energy
Cell with energy #step should kill the cell when its energy is drained
Cell#addEnergy should increase energy by the given amount
Cell should have a mutable position
Cell#createCopy should clone the cell
Cell should have default direction up
Cell#turnLeft should rotate the direction counterclockwise
Cell#turnRight should rotate the direction clockwise
Cell#step should decrease its energy and do a step for its program
Program should start execution from the first instruction
Program should execute instructions in order
Program should change its instruction index by the value return by the previously executed instruction
Program should restart when instruction index gets negative, should restart when instruction index gets past the program size