fix #56: cleaner module definitions