Better compatibility practices

I had some problems with the way tmx_* structures were declarated, coding was easier because it wasn't needed to add an asterisk for making a pointer but valac really got lost making Vala binding impossible, this way others language bindings would probably be also prejudicated.
I also renamed "tmx_free" to "tmx_map_free", this way it looks more self-explainable.