I understood everything you said @Gleeok .
I never tried doing tile editor programming before but it seems relatively difficult w/o a plan.

Arrays and hash tables, basically any ADT has no information about itself unless it's dynamically allocated properly.
I know you know (return by reference instead of value for relative faster accesses)