comments, true optional arguments
don't include module
comments
use alias
comments
use extend self
extract methods
extract module
comment
unpack code
comments