Query return output

When running this query

MATCH (a:Actor:Actor)-[r:ACTED_IN]->(m:Movie) 
WHERE m.year=1995
RETURN a{.id, .labels, .name, .born , .died},r{.start, .role},m{.title, .year}
ORDER BY m.year ASC
LIMIT 1

I am losing eg start and end in the relationship, I am losing the labels of the Actor.

How should I retain these properties that are parent of properties?
Where should I put my functions and column/key renames?

RETURN id(n) as id,labels(n) as labels,n.name as title,

You can add addition properties to maps when usin projection. I showed examples of adding key/value pair. If just add a variable by itself if with use the variable as key.

MATCH (a:Actor:Actor)-[r:ACTED_IN]->(m:Movie) 
WHERE m.year=1995
RETURN a{
  id: id(a), 
  .name, 
  .born, 
  .died, 
  labels: labels(a)
} as a, r{ 
  .role,
  startNode: startNode(r),
  endNode: endNode(r)
} as r, m{
  .title, 
  .year,
  labels: labels(m)
} as m
ORDER BY m.year ASC
LIMIT 1