move helper func to the bottom
try to document API
theme can be a function now. fix #35
version bump 0.4.2