refactor require rewriting use generator fn
refactor, use generator fn
refactor, use generator fn
add lookup for local files, use generator fn
fix #82