updated with better layout and a usage tutorial