Improve map properties and fix some bugs

* Fix #293
* Fix #280
* Fix #235
* Fix #300