You should be able to target stuff with the normal keys, and use the .Target variable for the ship to set the targetting computer variables. Now that won't work for subsystems, I forget what evil plans I had in mind for that variable. I think the problem was that it would require checking that when the variable (TargetSubsystem) was changed, you'd have to change the Target variable as well, and I was skeptical of doing that.
As far as aspect lock, that is an icky problem. I hate how FS has it hacked in for the player ship, it's all messy and is completely incompatible with the way the AI does it. (Which is basically a time variable that changes depending on difficulty and show on. If the AI stares at your ass within a certain cone of vision for that long, it has a lock.) The easiest way to do that would be to extrude those variables into scripting (sigh) though I may come up with alternate solutions.
Really I need to finish the core scripting system. Right now I have a suspicious memory of variables (any of them) not being settable, and me not being sure quite why. Also, I was having a nice null CTD that I suspect is due to some stupid Lua thing. The internal Lua API/SDK has about as good debugging skillz as the original scripting system implementation, except all the variables are a whole lot vaguer. Generally, all I'll be getting is that some two-letter variable doesn't work with a three-letter variable, when using a function named _getN() or something similar.
The go-between interface for FS2 that I wrote, of course, never crashes and always has completely clear error messages. (Actually, some parts of it are downright paranoid.)