Refactoring: store grid in a hash

Store grid in a hash, create different tile types