a python static blog generator