implemented optional line styles, thicknesses, colours (each with default), tidied colours