better structure, supporting REST