Added comments
Added convenient constructor
Added convenient constructor