refactored name, cleaned up code + docs