some cosmetics
some nicer hooks
some typos

props to @acegiak