Made code a little nicer, made linenumber() accept negative numbers.