You should check both MKVMerge and MEncoder.
MEncoder definitely capable of extracting part of the movie(*) and combining several ones together. (*)Though IIRC at least in the past MEncoder insisted on frame numbers and wasn't accepting simple times. (I had very little luck with the MEncoder since it often screwed up the A/V sync. But apparently it works for many, since literally all video reencoders for iPhone/PSP/PS3/etc are based on it.)
MKVMerge can't reencode and as such is more limited. But often is sufficient and produces very good results. It definitely can extract part of input. Joining several movies together I have never tried, but googling says it is also possible. (Nice thing about MKVMerge is that it has GUI and CLI. GUI, after clicking all desired options and whatnot, provides you with the command line to be used to start the actual CLI mkvmerge. You can take the command and tweak it to your heart content. I have used that to remux batch of movies with different sound and subtitles, by simply replacing input/output file names in the command line.)
Overall, what you ask is literally impractical: extracting creates a copy of a movie (large input = large output), combining/appending is potentially reencoding (output must be encoded homogeneously, while input is not guaranteed to be homogeneous) and thus very slow. You might wait an hour for the command to finish, only to find that you have cut too much or too little. That is why the video editors are GUI: you select the inputs, you tell it what to you want from it and then you can preview the end result, without waiting hours for the actual rendering.
P.S. Long in the past I have also used the Transcode. Worked pretty well, though is limited to AVI and MPEG2. But it does seem to be abandoned now.