added hash map (something big is coming!), readline history and notnil() macro