full map support, bunch of improvements