Update `recompose_path.decomposed_path()`

IMHO, `recompose_path.decomposed_path()` should return an object identical to the input `x` of `decompose_path()`. 

My patch makes sure that 
- trailing slashes for directory names, as you call it (I would call them *directory paths* as for me a *directory name* would only be the *basename* of a directory path; I would make the same distinction for *file paths* and *file names*), are removed
- `""` is the result for components with both empty directory names and file extensions