Constructs a new Instruction @param target
can be one of a number of things. If String, then the target of this
instruction is set to this. If an Instruction, then the Instruction is shallowly cloned (target and
content are copied). If a Source, then the source
is scanned and parsed for an Instruction
declaration. @param content Must be either a String, or a Parent. Can only be a Parent if the target argument is a Source. Otherwise, this String is set as the content
of this instruction.