Added license and updated docBlocks accordingly