rewrite views creation from maps into specilized objects

#206