This code determines if datetime object represent first workday of month, but it does not consider the special days like New Year (this year weekend but last year Friday).
Reaction to Basic efforts in: http://www.daniweb.com/software-development/legacy-and-other-languages/threads/362098
There algorithm idea given by jon.kiparsky
based docstring says 'workday' when it should be 'weekday':
''' Determine first workday based on day of month and weekday (0 == Monday) '''