For tiles, you can have them fixed size and forget special ruling if want to keep it simple. Found this with google:
http://www.savware.net/images/RPG_Tiles_01.png
Combining base blocks you can create any forms of structures. If you want to make a building that is size 2x3 tiles, have those 6 tiles be in texture but make editor put all 6 as a group same time.

Physics loop might look something like this (assuming floor is at 0 and sky is in positive side of numbers):
[pascal]uses math... // maybe need for Min() Max() unless make them yourself

with player do begin
oldX:=x; // These may be useful in collision though
oldY:=y; // they are not needed in this example yet
speedX:=speedX*0.95; // closer to 1 movement decelerates slower
speedY:=speedY-gravity;
if pressLeft then speedX:=max(-2,speedX-0.5);
if pressRight then speedX:=min(2,speedX+0.5);
if pressJump and TouchGround then begin // EDIT: oops forgot the key
TouchGround:=false;
speedY:=2; // Whatever jumpspeed is
end;
x:=x+speedX;
y:=y+speedY;

TouchGround:=false;
if y<FloorLevel then begin
Touchground:=true;
y:=FloorLevel;
speedY:=0;
end;
end;[/pascal]